“ค้นหาข้อมูลใน Excel ง่ายๆ ด้วย INDEX + MATCH!
เบื่อกับการใช้ VLOOKUP แล้วข้อมูลผิดพลาด? ลองใช้สูตร INDEX + MATCH แทนสิ! สูตรนี้ช่วยให้คุณค้นหาข้อมูลใน Excel ได้แม่นยำและยืดหยุ่นมากขึ้น ไม่ว่าจะค้นหาจากซ้ายไปขวาหรือขวาไปซ้าย สูตรนี้ช่วยให้ชีวิตคุณง่ายขึ้นเยอะ! 💡
#ExcelTips #INDEXMATCH #สูตรExcel #งานเอกสาร #สอนExcel #เทคนิคExcel #การจัดการข้อมูล #เรียนรู้Excel #งานบัญชี #จัดการเอกสาร
ถ้าเพิ่งเริ่มใช้ INDEX + MATCH แล้วงงว่า “ต้องพิมพ์ยังไงให้ไม่พัง” อันนี้เป็นวิธีที่ผมใช้บ่อยกับตารางสินค้า (รหัสสินค้า/ชื่อสินค้า/ราคา/จำนวนในคลัง/ผู้จัดจำหน่าย) เวลาอยากดึงข้อมูลจาก “รหัสสินค้า” เช่น P001 แล้วให้คืนค่าเป็นชื่อสินค้า ราคา หรือจำนวนคงเหลือ 1) สูตร INDEX + MATCH (พื้นฐาน / Exact match) โครงสร้างจำง่ายๆ คือ INDEX(ช่วงที่จะเอาค่าออกมา, MATCH(ค่าที่หา, ช่วงที่ใช้หา, 0)) ตัวอย่าง: มีรหัสสินค้าอยู่คอลัมน์ A (A7:A16) และชื่อสินค้าอยู่คอลัมน์ B (B7:B16) =INDEX(B7:B16, MATCH("P001", A7:A16, 0)) คำว่า 0 คือ “ตรงตัวเท่านั้น” แนะนำให้ใช้เกือบทุกกรณี โดยเฉพาะรหัสสินค้า 2) ดึงหลายคอลัมน์ด้วย MATCH ตัวเดียว ถ้าต้องการดึง “ราคา” หรือ “จำนวนในคลัง” ก็แค่เปลี่ยนช่วงใน INDEX ให้เป็นคอลัมน์นั้น - ราคา (เช่นอยู่ E7:E16): =INDEX(E7:E16, MATCH("P001", A7:A16, 0)) - จำนวนในคลัง (เช่นอยู่ D7:D16): =INDEX(D7:D16, MATCH("P001", A7:A16, 0)) ทริค: ทำช่องกรอกรหัสสินค้าไว้ 1 ช่อง (เช่น H2) แล้วอ้างอิงแทนการพิมพ์ =INDEX(D7:D16, MATCH(H2, A7:A16, 0)) 3) สูตร MATCH Excel ใช้ทำอะไร? MATCH จะคืน “ลำดับแถว” ของค่าที่เจอ เช่น P001 อยู่แถวที่ 1 ของช่วง A7:A16 ก็คืนค่า 1 แล้ว INDEX จะเอาลำดับนั้นไปหยิบค่าจากคอลัมน์ที่เราต้องการ 4) INDEX + MATCH แบบ 2 เงื่อนไข (ยอดฮิต) กรณีตารางมีชื่อสินค้าซ้ำ (เช่น “ยางลบ”) แต่คนละผู้จัดจำหน่าย อยากดึง “ราคา” จาก 2 เงื่อนไข: ชื่อสินค้า + ผู้จัดจำหน่าย สมมติ ชื่อสินค้าอยู่ B7:B16, ผู้จัดจำหน่ายอยู่ F7:F16, ราคาอยู่ E7:E16 =INDEX(E7:E16, MATCH(1, (B7:B16=H2)*(F7:F16=H3), 0)) โดย H2 = ชื่อสินค้า, H3 = ผู้จัดจำหน่าย หมายเหตุ: Excel รุ่นใหม่กด Enter ได้เลย แต่บางรุ่นเก่าต้องกด Ctrl+Shift+Enter 5) INDEX + MATCH หลายเงื่อนไข (เพิ่มเงื่อนไขได้เรื่อยๆ) เพิ่มหมวดหมู่ (เช่น C7:C16) ก็ใส่คูณเพิ่ม =INDEX(E7:E16, MATCH(1, (B7:B16=H2)*(F7:F16=H3)*(C7:C16=H4), 0)) 6) กันพังด้วย IFERROR (แนะนำมาก) เวลาค้นหาไม่เจอจะขึ้น #N/A ให้ครอบด้วย =IFERROR( INDEX(D7:D16, MATCH(H2, A7:A16, 0)), "ไม่พบข้อมูล") 7) ปัญหาที่เจอบ่อย (แล้วแก้ได้ไว) - มีช่องว่างแฝง ทำให้ MATCH หาไม่เจอ: ลอง TRIM กับข้อมูล หรือใช้ CLEAN - ตัวเลขเป็นข้อความ: แปลงด้วย VALUE หรือ Paste Special > Multiply - ช่วงข้อมูลเลื่อน: ล็อกช่วงด้วย $ เช่น $A$7:$A$16 ถ้าคุณทำงานแนวสต๊อกสินค้า/ราคา/ผู้จัดจำหน่ายบ่อยๆ สูตรชุดนี้แทน VLOOKUP ได้แทบทั้งหมด แถมยืดหยุ่นกว่า เวลาเพิ่มคอลัมน์ก็ไม่หลุดง่ายครับ/ค่ะ













