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
:D สามารถใช้สูตรได้แต่มีหลายขั้นตอนครับ
  1. คีย์เลข 1-5 ที่ AA1:AA5 เป็นตัวแทนของชื่อชีท
  2. ที่ AB1 คีย์สูตรเพื่อนับรายการในชีท 1
    =COUNTA(INDIRECT("'"&AA1&"'!B3:B1000"))
    Enter > Copy ไปด้านล่างถึง AB5
  3. ที่ AB6 คีย์สูตรเพื่อนับรายการทั้งหมด
    =SUM(AB1:AB5)
    Enter
  4. ที่ AC1 คีย์สูตรเพื่อใช้สำหรับระบุค่าบรรทัดเริ่มต้นสำหรับรายการของแต่ละชีท
    =SUM(AB$1:AB1)-AB1+1
    Enter > Copy ไปด้านล่างถึง AC5
  5. ที่ X4 คีย์สูตรเพื่อ List ชื่อชีทตามรายการที่มีทั้งหมด
    =IF(ROWS(X$4:X4)>$AB$6,"",LOOKUP(ROWS(X$4:X4),$AC$1:$AC$5,$AA$1:$AA$5))
    Enter > Copy ลงด้านล่างจนพบผลลัพธ์เป็นค่าว่า
  6. ที่ Y4 คีย์สูตรเพื่อ List รายการ Wheel Name ของแต่ละชีท
    =IF(X4<>"",INDIRECT("'"&X4&"'!B"&COUNTIF(X$4:X4,X4)+2),"")
    Enter > Copy ลงด้านล่างจนพบผลลัพธ์เป็นค่าว่าง
  7. เซลล์ 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::D สามารถใช้สูตรได้แต่มีหลายขั้นตอนครับ
  1. คีย์เลข 1-5 ที่ AA1:AA5 เป็นตัวแทนของชื่อชีท
  2. ที่ AB1 คีย์สูตรเพื่อนับรายการในชีท 1
    =COUNTA(INDIRECT("'"&AA1&"'!B3:B1000"))
    Enter > Copy ไปด้านล่างถึง AB5
  3. ที่ AB6 คีย์สูตรเพื่อนับรายการทั้งหมด
    =SUM(AB1:AB5)
    Enter
  4. ที่ AC1 คีย์สูตรเพื่อใช้สำหรับระบุค่าบรรทัดเริ่มต้นสำหรับรายการของแต่ละชีท
    =SUM(AB$1:AB1)-AB1+1
    Enter > Copy ไปด้านล่างถึง AC5
  5. ที่ X4 คีย์สูตรเพื่อ List ชื่อชีทตามรายการที่มีทั้งหมด
    =IF(ROWS(X$4:X4)>$AB$6,"",LOOKUP(ROWS(X$4:X4),$AC$1:$AC$5,$AA$1:$AA$5))
    Enter > Copy ลงด้านล่างจนพบผลลัพธ์เป็นค่าว่า
  6. ที่ Y4 คีย์สูตรเพื่อ List รายการ Wheel Name ของแต่ละชีท
    =IF(X4<>"",INDIRECT("'"&X4&"'!B"&COUNTIF(X$4:X4,X4)+2),"")
    Enter > Copy ลงด้านล่างจนพบผลลัพธ์เป็นค่าว่าง
  7. เซลล์ 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 ดีกว่าครับ :mrgreen:

Re: การดึงข้อมูลที่ซ้ำกัน มารวมกันด้วยเงื่อนไข

Posted: Mon Aug 17, 2015 2:17 pm
by sakonlaphat
ขอบคุณมากค่ะ