บทความ INDEX MATCH Excel / Google Sheets

INDEX MATCH Excel / Google Sheets — ค้นหาข้อมูลยืดหยุ่นกว่า VLOOKUP

พี่โยไอที
11 เมษายน 2026 · อัปเดต 13 ตุลาคม 2026
9 นาที
INDEX MATCH Excel / Google Sheets — ค้นหาข้อมูลยืดหยุ่นกว่า VLOOKUP

Cheat Sheet สูตร Google Sheets ฟรี

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

VLOOKUP ใช้ได้ดีจนวันที่ต้องค้นจากรหัสแล้วดึงชื่อสินค้าที่อยู่ทางซ้าย — หรือวันที่มีคนแทรกคอลัมน์ในตารางราคา แล้วสูตรทั้งไฟล์ดึงผิดคอลัมน์ไปหมด

INDEX MATCH แก้ทั้งสองปัญหา: ค้นได้ทุกทิศ และไม่พังเมื่อแทรกคอลัมน์ บทความนี้อธิบายทีละชิ้นจนเข้าใจ พร้อม XLOOKUP ทางลัดที่ใช้ได้ใน Google Sheets

เข้าใจทีละชิ้น: MATCH หาแถว INDEX ดึงค่า

ชิ้นสูตรได้อะไร
MATCH — อยู่แถวที่เท่าไหร่=MATCH("B-102",B2:B5,0)2 (อยู่ลำดับที่ 2 ของช่วง)
INDEX — ดึงค่าลำดับที่ N=INDEX(A2:A5,2)หลอด (ค่าลำดับที่ 2 ของคอลัมน์ A)
รวมกัน=INDEX(A2:A5,MATCH("B-102",B2:B5,0))หลอด

ตัว 0 ท้าย MATCH คือ "ต้องตรงทุกตัวอักษร" — ใส่ทุกครั้ง ถ้าลืม MATCH จะหาค่าใกล้เคียงแทน และได้คำตอบผิดโดยไม่มี error

ตัวอย่าง: ค้นจากรหัส ดึงชื่อที่อยู่ซ้าย และค้นสองทาง

ตัวอย่าง: INDEX MATCH ค้นจากรหัส ดึงชื่อที่อยู่ซ้ายมือ และค้นสองทาง
ภาพหน้าจอ Google Sheets: ตัวอย่าง: INDEX MATCH ค้นจากรหัส ดึงชื่อที่อยู่ซ้ายมือ และค้นสองทาง

ภาพจากไฟล์ Google Sheets จริง · เปิดไฟล์ตัวอย่างนี้ (ดูอย่างเดียว — ไฟล์ → ทำสำเนา เพื่อลองแก้)

ดูเป็นตาราง (ก๊อปตัวเลขได้)
ABCDEFG
1สินค้ารหัสราคาคงเหลือรหัสที่หาB-102
2แก้วกาแฟA-10125120ชื่อสินค้าหลอด
3หลอดB-1022500ราคา2
4ฝาแก้วB-103380XLOOKUP แบบเดียวกันหลอด
5ถุงหิ้วC-2011300ข้อมูลที่ต้องการคงเหลือ
6ผล (ค้นสองทาง)500

สูตรในช่องสีฟ้า (ช่วงเช่น C2:C4 = พิมพ์ที่ช่องแรกแล้วลากลง):

  • G2=INDEX(A2:A5,MATCH(G1,B2:B5,0))
  • G3=INDEX(C2:C5,MATCH(G1,B2:B5,0))
  • G4=XLOOKUP(G1,B2:B5,A2:A5)
  • G6=INDEX(C2:D5,MATCH(G1,B2:B5,0),MATCH(G5,C1:D1,0))

VLOOKUP ค้นจากคอลัมน์รหัส (B) แล้วดึงชื่อสินค้า (A) ที่อยู่ซ้ายมือไม่ได้ INDEX MATCH ทำได้ เพราะแยก "หาแถว" (MATCH) ออกจาก "ดึงค่า" (INDEX) · แถว 6 MATCH ตัวที่สองหาคอลัมน์จากชื่อหัวตาราง เปลี่ยน G5 เป็น ราคา ผลจะเปลี่ยนตาม

ทำไมใช้ INDEX MATCH แทน VLOOKUP

เรื่องVLOOKUPINDEX MATCH
ค่าที่ต้องการอยู่ซ้ายของคอลัมน์ที่ค้นทำไม่ได้ทำได้
แทรก/ลบคอลัมน์ในตารางเลขคอลัมน์ (เช่น 3) ไม่ขยับตาม ดึงผิดคอลัมน์อ้างคอลัมน์โดยตรง ขยับตามเอง
ค้นทั้งแถวและคอลัมน์ต้องเขียนเลขคอลัมน์เองMATCH ตัวที่สองหาคอลัมน์จากหัวตาราง
ความยากตอนเริ่มง่ายกว่ายาวกว่า ต้องเข้าใจสองฟังก์ชัน

ทางลัด: Google Sheets มี XLOOKUP ที่ทำได้เหมือน INDEX MATCH ในสูตรเดียว =XLOOKUP(สิ่งที่หา, คอลัมน์ที่ค้น, คอลัมน์ที่ดึง, "ไม่พบ")ตัวที่สี่คือข้อความเมื่อหาไม่เจอ ไม่ต้องครอบ IFERROR — ใช้ INDEX MATCH เมื่อต้องส่งไฟล์ให้คนที่ใช้ Excel รุ่นเก่า

ค้นหลายเงื่อนไข (เช่น สินค้า + สาขา)

  1. 1

    ทำคอลัมน์ช่วยที่รวมเงื่อนไข

    ในตารางข้อมูล เพิ่มคอลัมน์ =A2&"|"&B2 ได้ เช่น หลอด|สยาม
  2. 2

    MATCH หาค่าที่รวมแล้ว

    =INDEX(D2:D100,MATCH(G1&"|"&G2,E2:E100,0)) เมื่อ G1 = สินค้า G2 = สาขา E = คอลัมน์ช่วย
  3. 3

    หรือใช้ FILTER ถ้ามีได้หลายผล

    =FILTER(D2:D100,A2:A100=G1,B2:B100=G2) คืนทุกแถวที่ตรงทั้งสองเงื่อนไข

ข้อผิดพลาดที่เจอบ่อย

ได้ #N/A

หาไม่เจอ: สะกดต่างกัน มีช่องว่างเกิน (ไฟล์ภาษาอังกฤษ) หรือตัวเลขกับข้อความปนกัน (รหัส 101 ที่เป็นตัวเลข vs "101" ที่เป็นข้อความ) — ครอบด้วย IFNA(…,"ไม่พบ") ระหว่างแก้

ได้ค่าผิดแถว แต่ไม่มี error

ลืมใส่ 0 ท้าย MATCH หรือช่วงของ INDEX กับ MATCH เริ่มคนละแถว (A2:A5 กับ B1:B5) — ช่วงทั้งสองต้องเริ่มและจบแถวเดียวกัน

ลากสูตรลงแล้วช่วงเลื่อน

ล็อกช่วงตารางด้วย $ เช่น $A$2:$A$500 หรือใช้ช่วงที่มีชื่อ

ได้ #REF!

ตัวเลขแถวหรือคอลัมน์ที่ส่งให้ INDEX เกินขนาดช่วง มักเกิดจาก MATCH ค้นในช่วงที่ยาวกว่าช่วงของ INDEX

อยากได้ระบบสต็อกที่ค้นรหัสแล้วตัดยอดและเตือนของใกล้หมดเข้า LINE?

INDEX MATCH คือแกนของระบบสต็อกและใบสั่งซื้อทุกแบบ ถ้าอยากได้ระบบที่ทำครบตั้งแต่รับเข้า จ่ายออก จนแจ้งเตือนเข้า LINE เรากำลังเปิดจองอยู่
ดูระบบที่เปิดจอง

คำถามที่ถามบ่อย

INDEX MATCH คืออะไร?

การใช้สองฟังก์ชันคู่กัน MATCH หาว่าค่าที่ต้องการอยู่แถวที่เท่าไหร่ INDEX ดึงค่าจากแถวนั้นในคอลัมน์ที่ต้องการ ค้นได้ทุกทิศทางต่างจาก VLOOKUP

INDEX MATCH ดีกว่า VLOOKUP ยังไง?

ดึงค่าที่อยู่ซ้ายของคอลัมน์ค้นหาได้ และไม่พังเมื่อแทรกหรือลบคอลัมน์ เพราะอ้างคอลัมน์โดยตรงแทนการนับเลขคอลัมน์

ทำไม INDEX MATCH ได้ #N/A?

หาค่าไม่เจอ ตรวจการสะกด ช่องว่างเกิน และชนิดข้อมูล (ตัวเลขกับข้อความ) ให้ตรงกันทั้งสองฝั่ง

XLOOKUP ใน Google Sheets มีไหม?

มี ใช้ =XLOOKUP(สิ่งที่หา,คอลัมน์ที่ค้น,คอลัมน์ที่ดึง,"ไม่พบ") ทำงานแบบ INDEX MATCH ในสูตรเดียว

ค้นสองทาง (แถวและคอลัมน์) ทำยังไง?

ใช้ =INDEX(ตาราง,MATCH(ค่าแถว,คอลัมน์ค้น,0),MATCH(ชื่อหัวตาราง,แถวหัวตาราง,0)) เปลี่ยนชื่อหัวตารางแล้วผลเปลี่ยนตาม

ถ้าบทความนี้มีประโยชน์ ช่วยแชร์ให้เพื่อนๆ ด้วย

อยากสร้างระบบจริงด้วย Google Sheets?

คู่มือฉบับสมบูรณ์ สอนสร้างระบบ step-by-step ตั้งแต่เริ่มต้นจนใช้งานได้จริง พร้อมเทมเพลตและไฟล์ตัวอย่างครบ

ดาวน์โหลดทันทีหลังชำระเงิน ไม่มีค่าสมัครรายเดือน

อยากได้ระบบแบบนี้ แต่ไม่มีเวลาทำเอง?

รับทำระบบ Google Sheets ตามงานจริงของคุณ — บัญชี สต็อก ลงเวลา แจ้งเตือนเข้า LINE และ Apps Script อัตโนมัติ ทักมาเล่าปัญหาได้เลย ประเมินให้ฟรี

ทัก LINE ปรึกษาฟรี

บทความที่เกี่ยวข้อง

เครื่องมือแนะนำ