0Pricing
Excel Formulas Academy · บทเรียน

เหตุใด INDEX-MATCH จึงดีกว่า VLOOKUP

ดูข้อได้เปรียบด้านความเร็วและความยืดหยุ่นเหนือการค้นหาตามคอลัมน์

เหตุใด INDEX-MATCH จึงดีกว่า VLOOKUP เป็นบทเรียน Excel Formulas Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Excel Formulas Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Excel Formulas Academy มีบทเรียนทั้งหมด 4 บทเรียน

ทบทวน VLOOKUP อย่างรวดเร็ว

VLOOKUP ค้นหาในคอลัมน์แรกของตารางและส่งคืนค่าจากคอลัมน์ทางขวา โดยระบุคอลัมน์ด้วยหมายเลข

ตัวอย่างเช่น =VLOOKUP(E1, A2:D20, 3, FALSE) จะค้นหา E1 ในคอลัมน์ A และส่งคืนค่าจากคอลัมน์ที่ 3 ของตาราง

ฟังก์ชันนี้เป็นที่นิยมและใช้งานง่าย แต่ก็มีข้อจำกัดที่สำคัญอยู่หลายประการ ดังที่คุณจะเห็นว่า INDEX-MATCH ช่วยหลีกเลี่ยงข้อจำกัดเหล่านี้ได้ทั้งหมด

=VLOOKUP(E1, A2:D20, 3, FALSE)

ข้อจำกัดที่ 1: VLOOKUP ค้นหาได้เฉพาะทางขวา

VLOOKUP ต้องค้นหาในคอลัมน์ที่อยู่ซ้ายสุดของตาราง และส่งคืนค่าได้เฉพาะจากคอลัมน์ทางขวาเท่านั้น จึงค้นหาไปทางซ้ายไม่ได้

หากรหัสของคุณอยู่ในคอลัมน์ C และชื่อที่ต้องการอยู่ในคอลัมน์ A VLOOKUP ก็จะไม่สามารถทำงานได้

INDEX-MATCH ไม่มีกฎเช่นนั้น =INDEX(A2:A20, MATCH(E1, C2:C20, 0)) ค้นหาในคอลัมน์ C และส่งคืนข้อมูลจากคอลัมน์ A ได้โดยไม่ต้องใช้วิธีแก้ขัด

=INDEX(A2:A20, MATCH(E1, C2:C20, 0))

ข้อจำกัดที่ 2: หมายเลขคอลัมน์ที่เปราะบาง

อาร์กิวเมนต์ตัวที่ 3 ของ VLOOKUP คือหมายเลขคอลัมน์ที่กำหนดตายตัว เช่นเลข 3 ใน =VLOOKUP(E1, A2:D20, 3, FALSE)

หากมีคนแทรกคอลัมน์ใหม่ไว้ตรงกลางตาราง เลข 3 จะชี้ไปยังฟิลด์ที่ไม่ถูกต้อง และสูตรของคุณจะส่งคืนข้อมูลผิดโดยไม่แสดงสัญญาณเตือน

INDEX-MATCH อ้างอิงคอลัมน์จริงด้วยช่วงข้อมูล ดังนั้นเมื่อแทรกคอลัมน์ การอ้างอิงจะเลื่อนตามโดยอัตโนมัติ และผลลัพธ์ยังคงถูกต้อง

=VLOOKUP(E1, A2:D20, 3, FALSE)

INDEX-MATCH ยังคงทำงานได้เมื่อแทรกคอลัมน์

เนื่องจาก INDEX ชี้ไปยังช่วงคอลัมน์เฉพาะ เช่น C2:C20 การอ้างอิงนั้นจึงเลื่อนตามคอลัมน์เมื่อโครงสร้างเปลี่ยนแปลง

เมื่อแทรกคอลัมน์ใหม่ไว้ด้านหน้า สเปรดชีตจะอัปเดต C2:C20 เป็น D2:D20 ให้เอง สูตรจึงยังคงส่งคืนฟิลด์เดิม

ความทนทานนี้สำคัญกับเวิร์กบุ๊กจริงที่มีหลายคนแก้ไขอยู่ตลอดเวลา ข้อผิดพลาดที่ไม่แสดงสัญญาณเตือนน้อยลงหมายถึงรายงานที่น่าเชื่อถือมากขึ้น

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

ข้อจำกัดที่ 3: ประสิทธิภาพกับตารางกว้าง

VLOOKUP มักอ้างอิงบล็อกตารางทั้งหมด เช่น A2:Z20 แม้ว่าคุณต้องการเพียงคอลัมน์เดียวก็ตาม ในชีตขนาดใหญ่ นั่นหมายความว่าเครื่องมือจะสแกนเซลล์มากเกินความจำเป็น

INDEX-MATCH แตะต้องเพียงสองคอลัมน์แคบ ๆ ได้แก่คอลัมน์ที่ใช้ค้นหาและคอลัมน์ที่ส่งคืนข้อมูล

สำหรับสูตรไม่กี่สูตร ความแตกต่างอาจมองไม่เห็น แต่เมื่อมีการค้นหาหลายพันครั้ง INDEX-MATCH อาจคำนวณใหม่ได้เร็วขึ้นอย่างเห็นได้ชัด

=INDEX(Z2:Z20, MATCH(E1, A2:A20, 0))

ข้อจำกัดที่ 4: การส่งคืนหลายคอลัมน์

หากต้องการดึงหลายฟิลด์ด้วย VLOOKUP คุณต้องเขียนสูตรทั้งหมดซ้ำและเปลี่ยนหมายเลขคอลัมน์ทุกครั้ง ซึ่งเป็นจุดที่เกิดข้อผิดพลาดได้ง่าย

เมื่อใช้ INDEX-MATCH คุณจะคำนวณตำแหน่งเพียงครั้งเดียวแล้วนำกลับมาใช้ซ้ำได้ หลายคนเก็บ =MATCH(E1, A2:A20, 0) ไว้ในเซลล์ช่วย เช่น H1 แล้วเขียน =INDEX(C2:C20, H1) และ =INDEX(D2:D20, H1)

ค้นหาครั้งเดียว ดึงข้อมูลได้หลายรายการอย่างเป็นระเบียบ

=INDEX(C2:C20, $H$1)

XLOOKUP เหมาะกับกรณีใด

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

=XLOOKUP(E1, A2:A20, C2:C20) มีรูปแบบสะอาดตาและอ่านเข้าใจง่าย

อย่างไรก็ตาม XLOOKUP ไม่มีใน Excel รุ่นเก่าหรือเวิร์กบุ๊กที่ใช้ร่วมกันบางรายการ ส่วน INDEX-MATCH ใช้งานได้เกือบทุกที่ จึงยังเป็นทักษะสำคัญ

=XLOOKUP(E1, A2:A20, C2:C20)

ข้อแลกเปลี่ยนด้านความอ่านง่าย

หากมองอย่างเป็นธรรม INDEX-MATCH ก็มีข้อเสียอยู่หนึ่งอย่าง คือมีข้อความยาวกว่าและอ่านผ่าน ๆ ได้ยากกว่า VLOOKUP

ลองเปรียบเทียบ =VLOOKUP(E1, A2:D20, 3, FALSE) กับ =INDEX(C2:C20, MATCH(E1, A2:A20, 0))

การซ้อนฟังก์ชันต้องอาศัยการฝึกฝน การอ่านจากด้านในออกด้านนอก โดยอ่าน MATCH ก่อนแล้วจึงอ่าน INDEX จะช่วยให้ทำความเข้าใจได้ และโดยทั่วไปความยืดหยุ่นก็คุ้มค่ากับจำนวนอักขระที่เพิ่มขึ้น

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

เปรียบเทียบแบบเคียงข้างกัน

นี่คือการเขียนการค้นหาเดียวกันด้วยสองวิธี สำหรับตารางที่มีชื่ออยู่ใน A และเงินเดือนอยู่ใน D:

  • VLOOKUP: =VLOOKUP(E1, A2:D20, 4, FALSE)
  • INDEX-MATCH: =INDEX(D2:D20, MATCH(E1, A2:A20, 0))

ทั้งสองวิธีส่งคืนเงินเดือนเหมือนกัน แต่หากมีการแทรกคอลัมน์ จะมีเพียง INDEX-MATCH เท่านั้นที่ยังคงถูกต้อง และมีเพียงวิธีนี้ที่สามารถส่งคืนค่าจากทางซ้ายของคอลัมน์ A ได้

=INDEX(D2:D20, MATCH(E1, A2:A20, 0))

ควรเลือกใช้แต่ละแบบเมื่อใด

หลักง่าย ๆ ที่นำไปใช้ได้จริง:

  • ใช้ XLOOKUP เมื่อสเปรดชีตของคุณรองรับ เพื่อให้ได้รูปแบบการเขียนสมัยใหม่ที่สะอาดที่สุด
  • ใช้ INDEX-MATCH เมื่อต้องการความเข้ากันได้สูงสุด การค้นหาไปทางซ้าย และการอ้างอิงที่ไม่เสียหายเมื่อมีการแทรกคอลัมน์
  • ใช้ VLOOKUP เฉพาะกับการค้นหาอย่างรวดเร็วและเรียบง่ายทางขวาของคีย์ในตารางที่มีโครงสร้างคงที่

เมื่อรู้จัก INDEX-MATCH คุณก็จะสามารถอ่านและแก้ไขเวิร์กบุ๊กเดิมจำนวนนับไม่ถ้วนที่ใช้งานฟังก์ชันนี้ได้

=INDEX(D2:D20, MATCH(E1, A2:A20, 0))

ภาพรวม

VLOOKUP เป็นเครื่องมือเดียวที่มีข้อจำกัดตายตัว ส่วน INDEX-MATCH คือแนวคิดง่าย ๆ สองอย่าง ได้แก่ ค้นหาตำแหน่งและดึงค่า ซึ่งคุณสามารถนำมาประกอบกันได้อย่างยืดหยุ่น

บทเรียนสำคัญจริง ๆ คือความสามารถในการประกอบกันนี้ ฟังก์ชันขนาดเล็กที่นำมาต่อกันได้ช่วยให้คุณจัดการกับการค้นหาแบบสองทาง การค้นหาไปทางซ้าย และการดึงข้อมูลหลายฟิลด์ ซึ่งฟังก์ชันแบบทำงานครั้งเดียวไม่สามารถทำได้

เมื่อเชี่ยวชาญส่วนประกอบพื้นฐาน คุณก็จะก้าวข้ามข้อจำกัดของฟังก์ชันค้นหาใดฟังก์ชันหนึ่งได้

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

ตรวจสอบความเข้าใจอย่างรวดเร็ว

เลือกข้อได้เปรียบที่ INDEX-MATCH มีเหนือ VLOOKUP

ทบทวน: เหตุใด INDEX-MATCH จึงเหนือกว่า

คุณได้เปรียบเทียบแนวทางทั้งสองและเห็นข้อได้เปรียบของ INDEX-MATCH:

  • ค้นหาได้ทุกทิศทาง รวมถึงทางซ้ายของคีย์
  • การอ้างอิงคอลัมน์ยังคงใช้ได้เมื่อมีการแทรกหรือย้ายคอลัมน์
  • อาจทำงานได้เร็วกว่าเพราะอ่านเฉพาะสองคอลัมน์ที่จำเป็น
  • ทำงานได้ในสเปรดชีตเก่าที่ไม่มี XLOOKUP

VLOOKUP เหมาะกับงานด่วน แต่ INDEX-MATCH ให้การค้นหาที่ทนทานและยืดหยุ่น ซึ่งเป็นพื้นฐานสำหรับเทคนิคการค้นหาแบบสองทางขั้นสูงในบทต่อไป

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

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

บทเรียน “เหตุใด INDEX-MATCH จึงดีกว่า VLOOKUP” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “เหตุใด INDEX-MATCH จึงดีกว่า VLOOKUP” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Excel Formulas Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Excel Formulas Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “เหตุใด INDEX-MATCH จึงดีกว่า VLOOKUP”

ดูข้อได้เปรียบด้านความเร็วและความยืดหยุ่นเหนือการค้นหาตามคอลัมน์ คุณปฏิบัติ Excel Formulas Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Excel Formulas Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Excel Formulas Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “เหตุใด INDEX-MATCH จึงดีกว่า VLOOKUP” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Excel Formulas Academy นี้ได้ไหม

ได้ บทเรียน Excel Formulas Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ดึงค่าด้วย INDEX
  2. ค้นหาตำแหน่งด้วย MATCH
  3. รวม INDEX และ MATCH
  4. เหตุใด INDEX-MATCH จึงดีกว่า VLOOKUP
← กลับไปที่ Excel Formulas Academy