Page 1 of 3

ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Thu Dec 14, 2017 8:00 pm
by March201711
ใน column A1:A10 มี เลข 11678909 ซ้ำกัน 10 ตัว
column B1:B5 มีเลข 5678 ซ้ำกัน 5 ตัว
column B6:B7 มีเลข 7689 มีเลขซ้ำกัน 2 ตัว
column B8:B10 มีเลข 1325 มีเลขซ้ำกัน 3 ตัว
code มีเลข8หลัก PC-code มีเลข 4กลัก PD_code มีเลข 5หลัก
เช่น
A B C D
Code PC-code PD-code ผลรวม
1.11678909 5678 11224 ?????
2.11678909 5678 23458
3.11678909 5678 89087
4.11678909 5678 34647
5.11678909 5678 เลขทั้งหมดยกเว้น11224
และเลข 89087และ34647
6.11678909 7689 11224
7.11678909 7689 89087
8.11678909 1325 33875
9.11678909 1325 เลขทั้งหมดยกเว้น11224
และเลข 80865
10.11678909 1325 54289
11.12546778 4546 67896
12. 34532567 8709 43256

เลขทั้งหมด หมายถึง เลขตั้งแต่10000 ถึง เลข 99999
อยากถามว่าcolumn D จะดึงข้อมูลอย่างไรให้แสดงผลรวมของค่าได้ถูกต้อง เพราะฐานข้อมูลมีเป็นพันกว่ารายการและซ้ำกันเยอะมากคะ
เช่น
A1 หาผลรวมcode 11678909 PC-code 5678 นี้และ PD-code 11224 นี้
หรือ
A5 อยากให้ดึงข้อมูล code 11678909 ยกเว้นเลขที่อยู่ใน PD-code เลข11224 เลข 89087และ34647

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Thu Dec 14, 2017 8:03 pm
by snasui
:D แนบไฟล์ตัวอย่างมาด้วย คีย์ตัวอย่างคำตอบที่ต้องการลงมาตรง ๆ ในเซลล์เลย จะได้สะดวกต่อการทำความเข้าใจและตอบของเพื่อนสมาชิกครับ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Thu Dec 14, 2017 9:41 pm
by March201711
ตามเอกสารแนบคะ ขอบคุณคะ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Thu Dec 14, 2017 11:07 pm
by snasui
:D ตัวอย่างสูตรตามด้านล่างครับ
  1. ที่ K4 คีย์
    =SUMIFS($E$4:$E$32,$B$4:$B$32,G4,$C$4:$C$32,H4,$D$4:$D$32,I4)
    Enter > Copy ลงด้านล่าง
  2. ที่ M12 คีย์
    =SUMIFS($E$4:$E$32,$B$4:$B$32,G12,$C$4:$C$32,"-")-M13
    Enter
  3. ที่ M13 คีย์
    =SUM(SUMIFS($E$4:$E$32,$B$4:$B$32,G13,$D$4:$D$32,{80310,80330,80140},$C$4:$C$32,"-"))
    Enter
  4. ที่ M16 คีย์
    =SUMIFS($E$4:$E$32,$B$4:$B$32,G16,$C$4:$C$32,"-")-M17
    Enter
  5. ที่ M17 คีย์
    =SUM(SUMIFS($E$4:$E$32,$B$4:$B$32,G17,$D$4:$D$32,80120,$C$4:$C$32,"-"))
    Enter

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Fri Dec 15, 2017 8:03 am
by March201711
ได้แล้วค่ะ ขอบคุณมากคะ :thup:

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Fri Dec 15, 2017 11:30 pm
by March201711
รบกวนถามต่ออีกนิดนึงค่ะ ถ้า column code ไม่เรียงกัน เวลาใช้ sumifs มันจะมาเบิ้ลกันเยอะมากเลยคะ ต้องใช้อย่างไรให้มันแสดงยอดผลรวมแค่ code นี้ code เดียวบรรทัดเดียวค่ะ เพราะฐานข้อมูลไม่สามารถเปลี่ยนแปลงได้
เช่น บรรทัดที่ 1-5 code 15000005
บรรทัดที่ 6-7code 15100006
บรรทัดที่ 8-10 code ซ้ำ 15000005
ขอบคุณคะ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Fri Dec 15, 2017 11:42 pm
by snasui
:D Code ไม่จำเป็นต้องเรียงครับ

กรุณาอธิบายมาพร้อมไฟล์ ชี้ให้เห็นว่าข้อมูลเป็นอย่างไร ต้องการคำตอบเป็นอย่างไร จะได้สะดวกในการทำความเข้าใจครับ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 10:39 am
by March201711
ตามเอกสารแนบคะ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 10:55 am
by snasui
:D ตัวอย่างสูตรครับ
  1. ที่เซลล์ H7:H15 ลบคำว่า Code และค่าวรรคออกให้หมด ให้เหลือเพียง 1xxxxxx, 2xxxxxx, ..., 9xxxxxx
    เซลล์ J7 คีย์
  2. =SUM(IF(LEFT($A$2:$A$419)=LEFT(H7),IF(ISNUMBER($D$2:$D$419+0),$D$2:$D$419+0)))
    Ctrl+Shift+Enter > Copy ลงด้านล่าง
สูตรนี้จะรวมได้แม้ว่าต้นทางจะมีค่า Error อยู่ด้วย

!
Note: Ctrl+Shift+Enter เป็นการสร้างสูตร Array โดยสามารถเลือกดำเนินการตามข้อ 1 หรือ 2 ด้านล่าง
  1. กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
  2. กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน จากนั้นกดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วตามด้วย Enter เพื่อสร้างเป็นสูตร Array
  3. หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้ไม่สามารถคีย์เข้าไปเอง จะต้องมาด้วยการกดแป้น Ctrl+Shift+Enter เท่านั้น ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
  4. การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 11:22 am
by March201711
ทำตามแล้วคะ แต่ก้อยังไม่ได้ อยากให้ดึงข้อมูลจาก sheet Data คะ
ส่วนคำถามข้ออื่นๆยังทำไม่ได้เลยคะ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 11:30 am
by snasui
:D เซลล์ J7 ปรับสูตรเป็นด้านล่างครับ

=SUM(IF(LEFT(Data!$B$3:$B$3461)=LEFT(Result!H7),IF(ISNUMBER(Data!$D$3:$D$3461+0),Data!$D$3:$D$3461+0)))

ดูช่วงข้อมูลว่าต้องเท่ากันและไม่คลุมทั้งคอลัมน์

ส่วนข้ออื่น ๆ ผมยังไม่กระจ่างอธิบายมาใหม่เป็นลำดับ ๆ ไป ให้เคลียร์ไปทีละประเด็น ทำตัวอย่างให้เห็นเด่นชัดว่าต้นทางเป็นอย่างไร ต้องการให้แสดงผลเป็นอย่างไรจะได้เข้าถึงปัญหาได้โดยไวครับ

เรื่องการซ่อน Error สามารถใช้ Iferror เข้ามาช่วยได้เช่น

=Iferror(formula,0)

Formula คือสูตรที่ใช้ หมายถึง หากสูตรที่ใช้ได้ค่าเป็น Error ให้แสดงค่า 0

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 11:56 am
by March201711
ขอบคุณคะอาจารย์ ทำได้แล้วแต่มีบางรายการแสดงค่าซ้ำกันต้องปรับอย่างไรค่ะ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 12:11 pm
by snasui
:D เซลล์ D2 ปรับสูตรเป็นด้านล่างครับ

=IF(COUNTIF(A$2:A2,A2)>1,0,IFERROR(VLOOKUP(A2,Data!$B:$D,3,FALSE),0))

Enter > Copy ลงด้านล่าง

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 12:48 pm
by March201711
ทำตามที่อาจารย์บอกคะ แต่ค่าที่ได้ดึงแค่เฉพาะบางข้อมูล ไม่ได้ดึงผลรวมของ code และ Pd-code คะ
ตามเอกสารแนบคะ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 12:58 pm
by snasui
:D อธิบายแต่ละคำตอบมาอย่างละเอียดว่าแต่ละค่ามาจากเซลล์ใดของชีต Data บ้าง พิจารณาอย่างไรจึงได้ค่าเท่านั้นครับ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 1:13 pm
by March201711
code 24100000 มีค่าซ้ำกันหลายรายการแต่ มี Pd-code แยกกัน ตั้งแต่ 10000 ถึง 99999 ต้องการทำรายงาน sum code แต่แยก pd-code ออกเป็นเรืีองๆคะ เพราะ pd-code ใช้ทำรายวานจุดประสงค์ต่างกันคะ จึงจำเป็นต้องแยกpd-code ออก
เช่น
1. 2410000 มีเอา Pd-code 80140 1 บรรทัด
2. 2410000 มีเอา Pd-codeทั้งหมด ยกเว้น 80120 และ 80140 1 บรรทัด

ส่วนรายการ code อื่นๆ จะไม่ค่อยแยกกัน มีปัญหาตรง Pd-codeที่ต้องแยกรายการคะ และต้องเป็นยอดรวมcode ยอดรวมPD-code กัน ไม่เอารายการที่ซ้ำ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 1:19 pm
by snasui
:D ควรจะทำสรุปต่างในพื้นที่อื่น ในส่วนขั้นตอนการดึงขือมูลให้ดึงออกมาให้ได้ก่อนครับ

เช่นตัวอย่างก่อนหน้าที่นี้ดึงมาแสดงรายงานตาม Group Code กรณีนี้ก็เช่นเดียวกัน และอย่าลืมสูตรที่กำหนดว่ารายการใดที่ซ้ำจะต้องไม่ดึงมาซ้ำด้วยครับ

ปกติการสรุปข้อมูลลักษณะนี้เราจะไม่ใช้สูตร แต่จะเลือกใช้ PivotTable ดูตัวอย่างตามไฟล์แนบครับ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 2:23 pm
by March201711
ตามเอกสารแนบคะ แต่ทำไมเวลาใช้ countif +vlookup แล้วต้องมุมซ้ายบนสามเหลี่ยมสีเขียว ขึ้น error ค่ะ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 2:30 pm
by snasui
:D ช่วยอธิบายมาอีกรอบว่าจากไฟล์ล่าสุดปัญหาคืออะไร อย่าลืมตรวจสอบว่าโพสต์ที่ #17 ที่เป็นการใช้ PivotTable ให้คำตอบหรือไม่ อย่างไรครับ

การที่ขึ้นข้อความเตือนสีเขียว สามารถคลิกลงในเซลล์นั้นแล้วคลิกสัญญลักษณ์ที่โปรแกรมแสดง จะมีแจ้งไว้ว่า Error เพราะเหตุใด ในกรณีนี้เป็นเพราะสูตรไม่เหมือนกันในแต่บรรรทัด ให้สนใจคำตอบเป็นสำคัญก่อนว่าถูกต้องหรือไม่ หากไม่ถูกต้อง ควรได้ค่าใด การใช้สูตรจะต้องพิจารณาไม่คลุมทั้งคอลัมน์ เพื่อการประมวลผลที่มีประสิทธิภาพครับ

Re: ต้องการดึงข้อมูลซ้ำกัน 2-3column แสดงว่าผลรวมแบบมีเงื่อนไข และดึงเฉพาะบางตัว

Posted: Sat Dec 16, 2017 2:41 pm
by March201711
:lol: column D คือยอดที่ถูกต้องคะ

ตรงcolumn E แค่อยากทราบว่า ถ้าใช้คำสั่ง countif+vlookup จะได้แค่ยอดที่เจอยอดแรก ไม่ได้เอายอดผลรวมทั้งหมดของcode นั้นๆ คะ

แต่ถ้าใช้ sumif column F ต้องมานั่งไล่แต่ละบรรทัดไม่ต่างบวกมือทั่วไปคะ เพราะต้องมาดู column Pd-code ว่า เป็นอะไร บางอันไม่เอาPd-code นี้ บางอันเอาเฉพาะPd-code นี้ มีสูตรไหนบ้างคะลากลงมาข้างล่างเลยไม่ขึ้น สามเหลี่ยมเล็กมุมบนซ้ายคะอาจารย์