Page 1 of 1

สอบถามการดึงข้อมูลโดยใช้Vlook up ในกรณีมีข้อมูลซ้ำกัน

Posted: Tue Nov 21, 2017 10:02 am
by muhammad-usree
เนื่องด้วยผมกำลังออกแบบฟอร์มบันทึกข้อมูลการอบรม แล้วจะใช้Vlook upเข้ามาช่วย คือผมแค่กรอกเลขID code ก็จะให้ปรากฏข้อมูลการอบรมของคนคนนั้นทั้งหมดมาแสดงหน้า Report ไม่ทราบว่าต้องใช้สูตรอย่างไรครับ หรือว่ามีฟังก์ชั่นอื่นๆ แนะนำบ้างครับ

Re: สอบถามการดึงข้อมูลโดยใช้Vlook up ในกรณีมีข้อมูลซ้ำกัน

Posted: Tue Nov 21, 2017 10:32 am
by DhitiBank
ลองแบบนี้ครับ

ที่ชีท report เซลล์ Z12 คีย์
=SMALL(IF(TEXT($T$2,"00000")=TEXT('Traning Rec'!$B$3:$B$38,"00000"),ROW('Traning Rec'!$B$3:$B$38)-ROW('Traning Rec'!$B$3)+1),ROWS(B$12:B12))
กด Ctrl+Shift ค้างแล้ว Enter > คัดลอกลงล่าง

ฺB12 คีย์
=IF(ISNUMBER($Z12),INDEX('Traning Rec'!D$3:D$38,$Z12),"")
Enter > คัดลอกลงล่าง

แล้วคัดลอกสูตรที่ B12 ไปวางในคอลัมน์อื่นๆ ในตาราง โดยเปลี่ยนช่วงอ้างอิงที่ระบายสีแดงให้สอดคล้องกับหัวตารางครับ

Re: สอบถามการดึงข้อมูลโดยใช้Vlook up ในกรณีมีข้อมูลซ้ำกัน

Posted: Tue Nov 21, 2017 10:34 am
by parakorn
ตัวอย่างสูตรครับ
ปลด Mearge Cell B12 ถึง D12 ก่อนครับ
ที่ B12 ใส่สูตร =INDEX('Traning Rec'!$A$3:$J$3002,SMALL(IF('Traning Rec'!$B$3:$B$3002=Report!$T$2,ROW('Traning Rec'!$B$3:$B$3002)-ROW('Traning Rec'!$B$3)+1),ROWS($B$12:B12)),4) Ctrl+Shift+Enter แล้ว Copy ลงด้านล่าง

!
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 ทุกครั้ง
โดย เลข 4 คือคอลัมภ์ที่ต้องการดึงข้อมูลมาแสดงให้ปรับตามข้อมูลที่ต้องการ

หากต้องการ Merge Cell ให้สร้างตารางผลลัพท์ที่อื่น
แล้วใช้วิธีพิมพ์ =(Cellที่แสดงผลลัพท์) แล้วไปเลือกผลลัพท์มาแสดงอีกในตารางนี้อีกทีครับ

Re: สอบถามการดึงข้อมูลโดยใช้Vlook up ในกรณีมีข้อมูลซ้ำกัน

Posted: Tue Nov 21, 2017 10:46 am
by puriwutpokin
อีกตัวอย่างครับ ยกเลิก Merage Cells ก่อน ทุกเซล แล้ว
ที่ B12=IFERROR(INDEX('Traning Rec'!$D$3:$I$3002,SMALL(IF('Traning Rec'!$B$3:$B$3002=$T$2,ROW('Traning Rec'!$B$3:$B$3002)-ROW('Traning Rec'!$B$3)+1),ROWS($B$12:B12)),MATCH(B$11,{"วัน/เดือน/ปี","ระยะ
เวลาอบรม","หลักสูตรฝึกอบรม","วิทยากร","สถาบัน","ผลการประเมิน"},0)),"") กด Ctrl+Shift+Enter แล้วคัดลอกไปทางขวา แล้วลงล่าง แล้วค่อยกับมา Merage Cells อีกทีครับ

Re: สอบถามการดึงข้อมูลโดยใช้Vlook up ในกรณีมีข้อมูลซ้ำกัน

Posted: Tue Nov 21, 2017 11:09 am
by menem
ลองดูในไฟล์แนบนะครับ

ผมใช้ Match , Indirect , Index , IF และ IFERROR ในการทำงานครับ

Re: สอบถามการดึงข้อมูลโดยใช้Vlook up ในกรณีมีข้อมูลซ้ำกัน

Posted: Tue Nov 21, 2017 11:16 am
by parakorn
บอร์ดคึกคักจังเลยครับ :lol: :lol:

Re: สอบถามการดึงข้อมูลโดยใช้Vlook up ในกรณีมีข้อมูลซ้ำกัน

Posted: Wed Nov 22, 2017 2:45 pm
by muhammad-usree
ขอบคุณครับ สำหรับคำตอบ ตอนนี้กำลังแกะสูตรเพือนำไปประยกต์ต่อครับ