Page 1 of 1
การดึงข้อมูลที่ซ้ำกัน มารวมกันด้วยเงื่อนไข
Posted: Sat Aug 15, 2015 11:31 am
by sakonlaphat
อยากดึงข้อมูลที่ซ้ำกันหลายชีท มารวมไว้ที่ชีทเดียวค่ะ
Re: การดึงข้อมูลที่ซ้ำกัน มารวมกันด้วยเงื่อนไข
Posted: Sat Aug 15, 2015 11:59 am
by bank9597
ดูเหมือนว่า อาจจะต้องใช้ VBA ครับ
Re: การดึงข้อมูลที่ซ้ำกัน มารวมกันด้วยเงื่อนไข
Posted: Sat Aug 15, 2015 1:22 pm
by snasui

สามารถใช้สูตรได้แต่มีหลายขั้นตอนครับ
- คีย์เลข 1-5 ที่ AA1:AA5 เป็นตัวแทนของชื่อชีท
- ที่ AB1 คีย์สูตรเพื่อนับรายการในชีท 1
=COUNTA(INDIRECT("'"&AA1&"'!B3:B1000"))
Enter > Copy ไปด้านล่างถึง AB5
- ที่ AB6 คีย์สูตรเพื่อนับรายการทั้งหมด
=SUM(AB1:AB5)
Enter
- ที่ AC1 คีย์สูตรเพื่อใช้สำหรับระบุค่าบรรทัดเริ่มต้นสำหรับรายการของแต่ละชีท
=SUM(AB$1:AB1)-AB1+1
Enter > Copy ไปด้านล่างถึง AC5
- ที่ X4 คีย์สูตรเพื่อ List ชื่อชีทตามรายการที่มีทั้งหมด
=IF(ROWS(X$4:X4)>$AB$6,"",LOOKUP(ROWS(X$4:X4),$AC$1:$AC$5,$AA$1:$AA$5))
Enter > Copy ลงด้านล่างจนพบผลลัพธ์เป็นค่าว่า
- ที่ Y4 คีย์สูตรเพื่อ List รายการ Wheel Name ของแต่ละชีท
=IF(X4<>"",INDIRECT("'"&X4&"'!B"&COUNTIF(X$4:X4,X4)+2),"")
Enter > Copy ลงด้านล่างจนพบผลลัพธ์เป็นค่าว่าง
- เซลล์ B4 คีย์สูตรเพื่อแสดง Wheel Name เฉพาะค่าที่ไม่ซ้ำจากผลลัพธ์ในคอลัมน์ Y
=IFERROR(INDEX($Y$4:$Y$200,SMALL(IF(FREQUENCY(MATCH($Y$4:$Y$200,$Y$4:$Y$200,0),ROW($Y$4:$Y$200)-ROW($Y$4)+1),ROW($Y$4:$Y$200)-ROW($Y$4)+1),ROWS(B$4:B4))),"")
Ctrl+Shift+Enter > Copy ลงด้านล่าง
Re: การดึงข้อมูลที่ซ้ำกัน มารวมกันด้วยเงื่อนไข
Posted: Sat Aug 15, 2015 1:44 pm
by bank9597
snasui wrote:
สามารถใช้สูตรได้แต่มีหลายขั้นตอนครับ
- คีย์เลข 1-5 ที่ AA1:AA5 เป็นตัวแทนของชื่อชีท
- ที่ AB1 คีย์สูตรเพื่อนับรายการในชีท 1
=COUNTA(INDIRECT("'"&AA1&"'!B3:B1000"))
Enter > Copy ไปด้านล่างถึง AB5
- ที่ AB6 คีย์สูตรเพื่อนับรายการทั้งหมด
=SUM(AB1:AB5)
Enter
- ที่ AC1 คีย์สูตรเพื่อใช้สำหรับระบุค่าบรรทัดเริ่มต้นสำหรับรายการของแต่ละชีท
=SUM(AB$1:AB1)-AB1+1
Enter > Copy ไปด้านล่างถึง AC5
- ที่ X4 คีย์สูตรเพื่อ List ชื่อชีทตามรายการที่มีทั้งหมด
=IF(ROWS(X$4:X4)>$AB$6,"",LOOKUP(ROWS(X$4:X4),$AC$1:$AC$5,$AA$1:$AA$5))
Enter > Copy ลงด้านล่างจนพบผลลัพธ์เป็นค่าว่า
- ที่ Y4 คีย์สูตรเพื่อ List รายการ Wheel Name ของแต่ละชีท
=IF(X4<>"",INDIRECT("'"&X4&"'!B"&COUNTIF(X$4:X4,X4)+2),"")
Enter > Copy ลงด้านล่างจนพบผลลัพธ์เป็นค่าว่าง
- เซลล์ B4 คีย์สูตรเพื่อแสดง Wheel Name เฉพาะค่าที่ไม่ซ้ำจากผลลัพธ์ในคอลัมน์ Y
=IFERROR(INDEX($Y$4:$Y$200,SMALL(IF(FREQUENCY(MATCH($Y$4:$Y$200,$Y$4:$Y$200,0),ROW($Y$4:$Y$200)-ROW($Y$4)+1),ROW($Y$4:$Y$200)-ROW($Y$4)+1),ROWS(B$4:B4))),"")
Ctrl+Shift+Enter > Copy ลงด้านล่าง
ต้องเขียนสูตรยากๆแบนี้ ผมขอหนีไปซบ VBA ดีกว่าครับ

Re: การดึงข้อมูลที่ซ้ำกัน มารวมกันด้วยเงื่อนไข
Posted: Mon Aug 17, 2015 2:17 pm
by sakonlaphat
ขอบคุณมากค่ะ