Excel Formulas Academy · บทเรียน

เหตุใด VLOOKUP จึงล้มเหลวในบางครั้ง

วิเคราะห์ข้อจำกัดของคอลัมน์ซ้ายและข้อผิดพลาดของดัชนีคอลัมน์ในการค้นหา

บทเรียน 4 จาก 413 ขั้นตอน

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

เมื่อการค้นหาผิดพลาด

VLOOKUP เชื่อถือได้ แต่ก็ล้มเหลวได้ในบางกรณีที่คาดเดาได้ ข้อผิดพลาดส่วนใหญ่จะไม่ใช่เรื่องลึกลับเมื่อคุณเข้าใจกฎต่าง ๆ

ในบทเรียนนี้ คุณจะได้เรียนรู้สาเหตุทั่วไปของการค้นหาที่ผิดพลาด และวิธีแก้ไขแต่ละกรณีอย่างถูกต้อง การเข้าใจเรื่องเหล่านี้จะช่วยเปลี่ยนข้อผิดพลาด #N/A และ #REF! ที่ดูสับสนให้กลายเป็นปัญหาที่แก้ได้อย่างรวดเร็วและง่ายดาย

ข้อผิดพลาดที่ 1: ข้อจำกัดด้านคอลัมน์ซ้ายสุด

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

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

ข้อผิดพลาดที่ 2: ดัชนีคอลัมน์ไม่ถูกต้อง

หมายเลขดัชนีคอลัมน์ จะนับจากด้านซ้ายของช่วงตาราง ไม่ใช่จากแผ่นงาน ข้อผิดพลาดที่พบบ่อยคือใช้ตัวอักษรคอลัมน์ของแผ่นงานเป็นตัวเลข

หากช่วงของคุณคือ C1:F10 และต้องการคอลัมน์ F คอลัมน์นั้นคือคอลัมน์ลำดับที่ 4 ของช่วง ดังนั้นดัชนีจึงเป็น 4 ไม่ใช่ 6 การนับจากขอบที่ไม่ถูกต้องจะส่งคืนช่องข้อมูลผิด หรือหากตัวเลขมากกว่าความกว้างของช่วง ก็จะเกิดข้อผิดพลาด #REF!

=VLOOKUP(A2, C1:F10, 4, FALSE)

ข้อผิดพลาดที่ 3: ดัชนีใหญ่กว่าช่วง

หากหมายเลขดัชนีคอลัมน์มากกว่าจำนวนคอลัมน์ในช่วงตาราง VLOOKUP จะส่งคืน #REF!

ตัวอย่างเช่น การขอคอลัมน์ที่ 5 จากช่วงสามคอลัมน์ A1:C10 เป็นสิ่งที่ทำไม่ได้:

แก้ไขโดยขยายช่วงตารางให้ครอบคลุมคอลัมน์ที่ต้องการ หรือแก้ดัชนีให้เป็นหมายเลขคอลัมน์ที่มีอยู่จริงภายในช่วง

=VLOOKUP(A2, A1:C10, 5, FALSE)

ข้อผิดพลาดที่ 4: การจับคู่โดยประมาณโดยไม่ตั้งใจ

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

วิธีแก้ไขนั้นง่ายและควรทำเป็นนิสัย: ใส่ FALSE เสมอสำหรับการค้นหาแบบตรงกันทุกประการ

=VLOOKUP(A2, Data!A:C, 3, FALSE)

ข้อผิดพลาดที่ 5: ช่องว่างที่ซ่อนอยู่และข้อความไม่ตรงกัน

ค่าที่ใช้ค้นหา "A100" จะไม่ตรงกับ "A100 " ที่มีช่องว่างต่อท้าย ข้อมูลที่นำเข้ามักมีความแตกต่างที่มองไม่เห็นเช่นนี้อยู่มาก

อาการคือมีค่าอยู่ชัดเจน แต่คุณกลับได้รับ #N/A ให้ทำความสะอาดข้อมูลทั้งสองฝั่งด้วย TRIM เพื่อลบช่องว่างที่เกินมา

=VLOOKUP(TRIM(A2), $A$1:$C$100, 3, FALSE)

ข้อผิดพลาดที่ 6: ตัวเลขที่จัดเก็บเป็นข้อความ

หากค่าที่ใช้ค้นหาเป็นตัวเลข 100 แต่ตารางจัดเก็บรหัสเป็นข้อความ "100" หรือในทางกลับกัน ค่าทั้งสองจะไม่ตรงกันและคุณจะได้รับ #N/A

ให้สังเกตสามเหลี่ยมสีเขียวเล็ก ๆ หรือตัวเลขที่จัดชิดซ้าย ซึ่งเป็นสัญญาณว่าข้อมูลถูกจัดเก็บเป็นข้อความ วิธีแก้คือแปลงชนิดข้อมูล โดยครอบข้อความด้วย VALUE() เพื่อเปลี่ยนให้เป็นตัวเลข หรือเชื่อมสตริงว่างเข้ากับตัวเลขด้วย &"" เพื่อเปลี่ยนให้เป็นข้อความ เพื่อให้ข้อมูลทั้งสองฝั่งมีชนิดเดียวกัน

=VLOOKUP(VALUE(A2), $A$1:$C$100, 3, FALSE)

ข้อผิดพลาดที่ 7: ช่วงเลื่อนเมื่อคัดลอก

หากคุณลืมล็อกช่วงตาราง การคัดลอกสูตรลงด้านล่างจะลากช่วงออกจากข้อมูลของคุณ ช่วง A1:C100 ในแถวที่ 2 จะกลายเป็น A2:C101 ในแถวที่ 3 แล้วเป็น A3:C102 ทำให้พลาดข้อมูลบางแถวไปเรื่อย ๆ

แก้ไขด้วยการใช้การอ้างอิงแบบสัมบูรณ์ เพื่อให้ตารางอยู่คงที่และมีเพียงค่าที่ใช้ค้นหาเท่านั้นที่เลื่อน:

=VLOOKUP(A2, $A$1:$C$100, 3, FALSE)

อ่านเบาะแสจากข้อผิดพลาด

ข้อผิดพลาดแต่ละรายการชี้ไปยังสาเหตุที่แตกต่างกัน:

  • #N/A - ไม่พบค่า (ข้อมูลไม่ตรงกัน มีช่องว่าง ชนิดข้อมูลไม่ถูกต้อง หรือไม่มีค่านั้นอยู่จริง)
  • #REF! - หมายเลขดัชนีคอลัมน์มากกว่าช่วง หรือเซลล์ที่อ้างอิงถูกลบ
  • #VALUE! - อาร์กิวเมนต์มีชนิดข้อมูลไม่ถูกต้อง เช่น ดัชนีคอลัมน์เป็นค่าติดลบหรือศูนย์
  • #NAME? - ชื่อฟังก์ชันสะกดผิด เช่น VLOOKP

เมื่อจับคู่ข้อผิดพลาดกับความหมายได้ เท่ากับคุณแก้ปัญหาไปแล้วครึ่งหนึ่ง

ค่าทดแทนที่ใช้งานง่ายด้วย IFERROR

ระหว่างการแก้ไขข้อบกพร่อง คุณสามารถครอบการค้นหาเพื่อให้ผู้ใช้เห็นข้อความที่เข้าใจง่ายแทนข้อผิดพลาดโดยตรงได้ IFERROR จะดักจับข้อผิดพลาดใด ๆ แล้วส่งคืนข้อความของคุณแทน

วิธีนี้ไม่ได้แก้สาเหตุที่แท้จริง ดังนั้นควรใช้หลังจากเข้าใจแล้วว่าการค้นหาล้มเหลวเพราะเหตุใด การซ่อนข้อผิดพลาดเร็วเกินไปอาจทำให้ปัญหาข้อมูลจริงถูกมองข้าม

=IFERROR(VLOOKUP(A2, $A$1:$C$100, 3, FALSE), "Not found")

รายการตรวจสอบการแก้ไขข้อบกพร่อง

เมื่อการค้นหาทำงานผิดปกติ ให้ตรวจสอบรายการต่อไปนี้อย่างรวดเร็ว:

  • ค่าที่ใช้ค้นหาอยู่ใน คอลัมน์แรก ของช่วงหรือไม่
  • หมายเลขดัชนีคอลัมน์นับจากขอบซ้ายของช่วงและอยู่ภายในความกว้างของช่วงหรือไม่
  • คุณใส่ FALSE สำหรับการจับคู่แบบตรงกันทุกประการแล้วหรือไม่
  • ข้อมูลทั้งสองฝั่งมี ชนิดข้อมูล เดียวกันหรือไม่ (ข้อความกับตัวเลข) และไม่มี ช่องว่าง เกินมาหรือไม่
  • คุณ ล็อกช่วงตาราง ด้วยเครื่องหมายดอลลาร์แล้วหรือไม่

การตรวจสอบรายการนี้จากบนลงล่างจะแก้ปัญหาการค้นหาส่วนใหญ่ได้ภายในไม่กี่วินาที

=VLOOKUP(TRIM(A2), $A$1:$C$100, 3, FALSE)

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

วิเคราะห์การค้นหานี้ว่าล้มเหลวเพราะเหตุใด

ทบทวน: เหตุใด VLOOKUP จึงล้มเหลว

สาเหตุที่พบบ่อยและวิธีแก้ไข:

  • ข้อจำกัดด้านคอลัมน์ซ้ายสุด - จัดเรียงคอลัมน์ใหม่ หรือใช้ INDEX-MATCH / XLOOKUP
  • หมายเลขดัชนีคอลัมน์ไม่ถูกต้องหรือใหญ่เกินไป - นับจากขอบซ้ายของช่วง และขยายช่วงให้กว้างขึ้น
  • ไม่ได้ใส่ FALSE - กำหนดการจับคู่แบบตรงกันทุกประการเสมอสำหรับรหัสประจำตัว
  • ช่องว่างและข้อความกับตัวเลข - ทำความสะอาดด้วย TRIM และแปลงชนิดข้อมูลด้วย VALUE หรือ &""
  • ไม่ได้ล็อกตาราง - ใช้ $ เพื่อให้ช่วงอยู่กับที่

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

=VLOOKUP(TRIM(A2), $A$1:$C$100, 3, FALSE)
เริ่มต้นได้ฟรี

เรียนรู้ Excel ด้วย AI tutor — ฟรี

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

คอร์ส
30
บทเรียน
120

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

บทเรียน “เหตุใด VLOOKUP จึงล้มเหลวในบางครั้ง” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “เหตุใด VLOOKUP จึงล้มเหลวในบางครั้ง”

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

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

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

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

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

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

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

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

  1. VLOOKUP ค้นหาตารางอย่างไร
  2. การจับคู่แบบตรงทั้งหมดกับแบบโดยประมาณ
  3. ค้นหาตามแถวด้วย HLOOKUP
  4. เหตุใด VLOOKUP จึงล้มเหลวในบางครั้ง
← กลับไปที่ Excel Formulas Academy