Page 1 of 1

ขอทราบวิธีเรียกรายงานตามช่วงที่กำหนด

Posted: Sun Jul 07, 2013 8:05 pm
by lekky
ตามตัวอย่างที่ให้นี้ ถ้าเรียก pivot table แล้ว
จะต้องทำอย่างไรคะ
เช่น ต้องการดู รายงานเฉพาะช่วง ม.ค. และเรียกเฉพาะแผนก สนง
แล้วแสดงหน้ารายงาน เหมือนเดิม โดยมียอดรวมเงินด้วย
คือ
วันที่ แผนก ชื่อบัญชี จำนวน

Re: ขอทราบวิธีเรียกรายงานตามช่วงที่กำหนด

Posted: Sun Jul 07, 2013 8:49 pm
by snasui
:D ลองทำตามภาพด้านล่าง > Refresh > เลือกแผนก, เลือกจำนวนเงินมาวางตามต้องการ

Re: ขอทราบวิธีเรียกรายงานตามช่วงที่กำหนด

Posted: Sun Jul 07, 2013 10:05 pm
by lekky
ขอโทษนะคะ Sheet2 ที่ให้ไป ไม่เอานะคะ
รบกวนช่วยทำตัวอย่างไฟล์ที่สามารถ แสดงผลดังนี้ค่ะ
เลือกช่วงวันที่............... เลือกแผนก...........
วันที่ แผนก ชื่อบัญชี จำนวนเงิน

โดยแสดงผลตามช่วงวันที่และแผนกที่เลือกค่ะ

Re: ขอทราบวิธีเรียกรายงานตามช่วงที่กำหนด

Posted: Sun Jul 07, 2013 10:07 pm
by snasui
:D ให้ทำหน้ารายงานที่ต้องการและแสดงตัวอย่างคำตอบที่ต้องการมาด้วยเพื่อจะได้เข้าใจตรงกันครับ

Re: ขอทราบวิธีเรียกรายงานตามช่วงที่กำหนด

Posted: Sun Jul 07, 2013 10:36 pm
by lekky
ตัวอย่างตามแนบค่ะ

Re: ขอทราบวิธีเรียกรายงานตามช่วงที่กำหนด

Posted: Sun Jul 07, 2013 11:32 pm
by snasui
:D ลองตามนี้ครับ
  1. F1 คีย์วันที่เริ่ม เช่น 1/2/2013
  2. F2 คีย์วันสิ้นสุด เช่น 28/2/2013
  3. F3 คีย์แผนกที่ต้องการค้นหา เช่น ขาย1
  4. F4 คีย์สูตรเพื่อหาจำนวนที่พบ
    =SUMPRODUCT(--(ข้อมูลดิบ!$A$2:$A$81>=$F$1),--(ข้อมูลดิบ!$A$2:$A$81<=$F$2),--(ข้อมูลดิบ!$B$2:$B$81=$F$3))
    Enter
  5. A1 คีย์สูตร
    ="รายงานช่วงวันที่ "&TEXT(F1,"dd/mm/yy -")&TEXT(F2,"dd/mm/yy")
    Enter
  6. A2 คีย์สูตร
    ="แผนก "&F3
    Enter
  7. A4 คีย์สูตรเพื่อ List วันที่
    =IFERROR(INDEX(ข้อมูลดิบ!A$2:A$81,SMALL(IF(ข้อมูลดิบ!$A$2:$A$81>=$F$1,IF(ข้อมูลดิบ!$A$2:$A$81<=$F$2,IF(ข้อมูลดิบ!$B$2:$B$81=$F$3,ROW(ข้อมูลดิบ!$A$2:$A$81)-ROW(ข้อมูลดิบ!$A$2)+1))),ROWS(A$4:A4))),"")
    Ctrl+Shift+Enter > Copy ลงด้านล่าง
  8. B4 คีย์สูตรเพื่อ List ชื่อบัญชี
    =IFERROR(INDEX(ข้อมูลดิบ!C$2:C$81,SMALL(IF(ข้อมูลดิบ!$A$2:$A$81>=$F$1,IF(ข้อมูลดิบ!$A$2:$A$81<=$F$2,IF(ข้อมูลดิบ!$B$2:$B$81=$F$3,ROW(ข้อมูลดิบ!$A$2:$A$81)-ROW(ข้อมูลดิบ!$A$2)+1))),ROWS(B$4:B4))),"")
    Ctrl+Shift+Enter > Copy ลงด้านล่าง
  9. C4 คีย์สูตรเพื่อ List จำนวนเงิน
    =IF(ROWS(C$4:C4)<=$F$4,SUMIFS(ข้อมูลดิบ!$D$2:$D$81,ข้อมูลดิบ!$C$2:$C$81,$B4,ข้อมูลดิบ!$B$2:$B$81,$F$3,ข้อมูลดิบ!$A$2:$A$81,$A4),IF(ROWS(C$4:C4)=$F$4+1,SUM(C$3:C3),""))
    Enter > Copy ลงด้านล่าง
Note: Ctrl+Shift+Enter หมายถึงเมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้คีย์เข้าไปเองไม่ได้ ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง

Re: ขอทราบวิธีเรียกรายงานตามช่วงที่กำหนด

Posted: Sun Jul 07, 2013 11:43 pm
by lekky
ขอบคุณค่ะ