VLOOKUP มักจะล้มเหลวจากสาเหตุไม่กี่ประการนี้: การจับคู่แบบใกล้เคียง (approximate match), ข้อมูลข้อความกับตัวเลขไม่ตรงกัน, ช่องว่างที่ซ่อนอยู่, ช่วงข้อมูลที่ไม่ได้ล็อก, หมายเลขคอลัมน์ไม่ถูกต้อง หรือค่าที่ค้นหาไม่ได้อยู่ในคอลัมน์แรก ลองตรวจสอบตามรายการนี้ — หรือวางสูตรที่เสียลงใน ExcelGPT แล้วถามว่า "ทำไมสูตรนี้ถึงไม่ทำงาน?" เพื่อรับวิธีแก้ไขทันที
ให้ AI ทำให้บังคับการจับคู่แบบตรงตัว
ข้อผิดพลาด #N/A ส่วนใหญ่เกิดจากการขาดอาร์กิวเมนต์สุดท้าย ให้ลงท้ายสูตรด้วย , FALSE) (หรือ 0) เพื่อให้ VLOOKUP หยุดทำการจับคู่แบบใกล้เคียง
แก้ไขข้อผิดพลาดข้อมูลข้อความกับตัวเลขไม่ตรงกัน
หากคีย์เป็นตัวเลขในฝั่งหนึ่งแต่เป็นข้อความในอีกฝั่ง VLOOKUP จะไม่จับคู่กัน ให้แปลงค่าด้วย VALUE() / TEXT() หรือใช้ ข้อมูล ▸ ข้อความเป็นคอลัมน์ เพื่อล้างข้อมูลในคอลัมน์
ลบช่องว่างที่ซ่อนอยู่
ช่องว่างที่อยู่ข้างหน้า/ข้างหลังทำให้การจับคู่ล้มเหลว ให้ครอบค่าที่ค้นหาด้วย TRIM: =VLOOKUP(TRIM(A2), …)
ล็อกช่วงตาราง
เมื่อคุณลากสูตรลงมา ช่วงที่ไม่ได้ล็อกจะเลื่อนตาม กด F4 เพื่อทำให้เป็นค่าสัมบูรณ์ (absolute): $A$2:$D$100
ตรวจสอบหมายเลขคอลัมน์
col_index_num จะนับจากคอลัมน์แรกของตาราง ไม่ใช่ของเวิร์กชีต หากใส่ตัวเลขที่มากกว่าความกว้างของตาราง จะส่งคืนค่า #REF!
ตรวจสอบให้แน่ใจว่าคีย์อยู่ในคอลัมน์แรก
VLOOKUP จะค้นหาเฉพาะในคอลัมน์แรกของช่วงข้อมูลและมองไปทางขวา หากคีย์ของคุณอยู่ทางขวาของผลลัพธ์ที่ต้องการ ให้เปลี่ยนไปใช้ =XLOOKUP(A2, B:B, C:C) หรือ INDEX/MATCH
=IFNA(VLOOKUP(TRIM(A2), $A$2:$D$100, 4, FALSE), "Not found")เกือบทั้งหมดเกิดจากความไม่ตรงกันที่ซ่อนอยู่: ช่องว่างส่วนเกิน, ตัวเลขที่ถูกเก็บเป็นข้อความ หรือการจับคู่แบบใกล้เคียง ลองใช้ =VLOOKUP(TRIM(A2), range, n, FALSE) และตรวจสอบให้แน่ใจว่าข้อมูลทั้งสองฝั่งเป็นประเภทเดียวกัน
อาจเป็นเพราะอาร์กิวเมนต์สุดท้ายเป็น TRUE หรือถูกละเว้นไว้ (การจับคู่แบบใกล้เคียง) หรือช่วงตารางไม่ได้ถูกล็อกและเลื่อนตำแหน่งเมื่อคุณลากสูตรลงมา ให้เพิ่ม FALSE และกด F4 เพื่อล็อกช่วงข้อมูล
ช่วงข้อมูลไม่ใช่ค่าสัมบูรณ์ (absolute) — เมื่อคุณลากสูตรลงมา ช่วงข้อมูลจะเลื่อนลงไปต่ำกว่าข้อมูลจริงของคุณ ให้ล็อกช่วงข้อมูลด้วย $ (F4) เพื่อให้ทุกแถวค้นหาจากตารางทั้งหมด