สูตร IF ISERROR VLOOKUP ใน Excel และทางเลือกอื่น

  • แบ่งปันสิ่งนี้
Michael Brown

ในบทช่วยสอนนี้ เราจะดูวิธีใช้ ISERROR กับ VLOOKUP ใน Excel เพื่อจัดการกับข้อผิดพลาดทุกประเภทอย่างมีประสิทธิภาพ

VLOOKUP เป็นหนึ่งในฟังก์ชัน Excel ที่สร้างความสับสนมากที่สุด ด้วยปัญหามากมาย ไม่ว่าคุณกำลังดูตารางใด ข้อผิดพลาด #N/A เป็นสิ่งที่พบได้ทั่วไป โดย #NAME และ #VALUE จะปรากฏขึ้นเป็นครั้งคราวเช่นกัน การใช้ VLOOKUP กับ ISERROR สามารถช่วยให้คุณตรวจจับข้อผิดพลาดที่เป็นไปได้ทั้งหมดและจัดการด้วยวิธีที่เหมาะสมที่สุดกับสถานการณ์ของคุณ

    เหตุใด VLOOKUP จึงแสดงข้อผิดพลาด

    มากที่สุด ข้อผิดพลาดทั่วไปในสูตร VLOOKUP คือ #N/A ที่เกิดขึ้นเมื่อไม่พบค่าการค้นหา ซึ่งอาจเกิดขึ้นได้เนื่องจากสาเหตุหลายประการ:

    • ไม่มีค่าการค้นหาในอาร์เรย์การค้นหา
    • ค่าการค้นหาสะกดผิด
    • มีคำนำหน้าหรือ ช่องว่างต่อท้ายในค่าการค้นหาหรือคอลัมน์การค้นหา
    • คอลัมน์การค้นหาไม่ใช่คอลัมน์ซ้ายสุดของอาร์เรย์ตาราง

    นอกจากนี้ คุณสามารถเรียกใช้ #VALUE ! ผิดพลาด เช่น เมื่อค่าการค้นหามีอักขระมากกว่า 255 ตัว ในกรณีที่มีการสะกดชื่อฟังก์ชันผิดพลาด ข้อผิดพลาด #NAME? จะปรากฏขึ้น

    สำหรับข้อมูลอ้างอิงทั้งหมด โปรดดูโพสต์ก่อนหน้าของเราเกี่ยวกับสาเหตุที่ Excel VLOOKUP ไม่ทำงาน

    สูตร IF ISERROR VLOOKUP เพื่อแทนที่ข้อผิดพลาดด้วยข้อความที่กำหนดเอง

    เพื่อปกปิดข้อผิดพลาดที่เป็นไปได้ทั้งหมดที่สามารถเรียกใช้โดย VLOOKUP คุณสามารถวางไว้ภายในสูตร IF ISERRORแบบนี้:

    IF(ISERROR(VLOOKUP(…)), " text_if_error", VLOOKUP(…))

    ตามตัวอย่าง ลองดึงชื่อวิชาที่นักเรียนของ การทดสอบล้มเหลวของกลุ่ม A:

    =VLOOKUP(A3, $D$3:$E$9, 2, FALSE)

    ด้วยเหตุนี้ คุณจะได้รับข้อผิดพลาด #N/A จำนวนมาก ซึ่งอาจสร้างความรู้สึกว่าสูตรเสียหาย

    ความจริงแล้ว ข้อผิดพลาดเหล่านี้บ่งชี้ว่าค่าการค้นหาบางค่า (A3:A14) ไม่พบในรายการค้นหา (D3:D9) ในการถ่ายทอดแนวคิดนั้นอย่างชัดเจน ให้ซ้อนสูตร VLOOKUP ของคุณในโครงสร้าง IF ISERROR:

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    การดำเนินการนี้จะตรวจจับข้อผิดพลาดและส่งกลับข้อความที่คุณกำหนดเอง:

    เคล็ดลับและหมายเหตุ:

    • ข้อได้เปรียบหลักของสูตรนี้คือ ใช้งานได้ดีใน ทุกเวอร์ชัน ของ Excel 2000 จนถึง Excel 365 ในเวอร์ชันสมัยใหม่ จะง่ายกว่า และมีทางเลือกอื่นที่กะทัดรัดกว่านี้
    • ฟังก์ชัน ISERROR จับ ข้อผิดพลาดทั้งหมดอย่างสมบูรณ์ เช่น #N/A, #NAME, #VALUE ฯลฯ ในกรณีที่คุณต้องการแสดงแบบกำหนดเอง ข้อความเฉพาะเมื่อไม่พบค่าการค้นหา (ข้อผิดพลาด #N/A) ให้ใช้ IF ISNA VLOOKUP (ในทุกรุ่น) หรือ IFNA VLOOKUP (ใน Excel 2013 และใหม่กว่า)

    ISERROR VLOOKUP ถึง ส่งคืนเซลล์ว่างหากเกิดข้อผิดพลาด

    หากต้องการมีเซลล์ว่างเมื่อเกิดข้อผิดพลาด รับสูตรของคุณเพื่อส่งคืนสตริงว่าง ("") แทนข้อความที่กำหนดเอง:

    IF(ISERROR(VLOOKUP(...) ), "", VLOOKUP(...))

    ในกรณีของเรา สูตรจะอยู่ในรูปแบบนี้:

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    Theผลลัพธ์เป็นไปตามที่คาดไว้ - เซลล์ว่างหากไม่พบชื่อนักเรียนในตารางการค้นหา

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

    IF ISERROR VLOOKUP ใช่/ไม่ใช่ สูตร

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

    IF(ISERROR(VLOOKUP(…)), " text_if_not_found ", " text_if_found ")

    ใน ชุดข้อมูลตัวอย่าง สมมติว่าคุณต้องการทราบว่านักเรียนคนไหนสอบตกและคนไหนสอบไม่ผ่าน เพื่อให้บรรลุตามนี้ ให้ใช้สูตร ISERROR VLOOKUP ที่คุ้นเคยอยู่แล้วในการทดสอบเชิงตรรกะของ IF และบอกให้ผลลัพธ์เป็น "ไม่" หากไม่พบค่า (ISERROR VLOOKUP ส่งคืนค่า TRUE), "ใช่" หากพบ (ISERROR VLOOKUP ส่งคืน FALSE):

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", "Yes")

    ทางเลือก ISERROR VLOOKUP

    ชุดค่าผสม IF ISERROR เป็นเทคนิคที่เก่าแก่ที่สุดที่พิสูจน์แล้วว่าใช้ Vlookup โดยไม่มีข้อผิดพลาดใน Excel เมื่อเวลาผ่านไป ฟังก์ชันใหม่ๆ ก็พัฒนาขึ้น ทำให้มีวิธีการทำงานเดียวกันได้ง่ายขึ้น ด้านล่างนี้ เราจะหารือถึงวิธีแก้ปัญหาที่เป็นไปได้อื่นๆ และเมื่อใดที่เหมาะสมที่สุดที่จะใช้แต่ละวิธี

    IFERROR VLOOKUP

    มีให้ใช้งานใน Excel 2007 และสูงกว่า

    ตั้งแต่เวอร์ชัน 2007 เป็นต้นมา Excel มีฟังก์ชันพิเศษชื่อ IFERROR เพื่อตรวจสอบสูตรเพื่อหาข้อผิดพลาดและส่งคืนข้อความของคุณเอง (หรือเรียกใช้สูตรอื่น) หากตรวจพบข้อผิดพลาดใดๆ

    IFERROR(VLOOKUP(…), " text_if_error ")

    สูตรในชีวิตจริงมีดังนี้:

    =IFERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")

    เมื่อแรกเห็น ดูเหมือนว่าจะเป็นแอนะล็อกที่สั้นกว่าของสูตร IF ISERROR VLOOKUP อย่างไรก็ตาม มีความแตกต่างที่สำคัญ:

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

    สำหรับรายละเอียดเพิ่มเติม โปรดดูที่การใช้ IFERROR กับ VLOOKUP ใน Excel

    IF ISNA VLOOKUP

    ใช้งานได้ใน Excel 2000 และใหม่กว่า

    ในสถานการณ์ที่คุณต้องการดักเฉพาะ #N/A โดยไม่ตรวจจับข้อผิดพลาดอื่นๆ ฟังก์ชัน ISNA มีประโยชน์ ไวยากรณ์เหมือนกับของ IF ISERROR VLOOKUP:

    IF(ISNA(VLOOKUP(…)), " text_if_error ", VLOOKUP(…))

    แต่ในบางสถานการณ์ ดูเหมือนว่า สูตรที่เหมือนกันอาจให้ผลลัพธ์ที่แตกต่างกัน:

    =IF(ISNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    ในภาพด้านล่าง เซลล์ A13 มีช่องว่างต่อท้ายจำนวนมาก เนื่องจากความยาวรวมของค่าการค้นหาเกิน 255 อักขระ ด้วยเหตุนี้ สูตรจึงทริกเกอร์ #VALUE! ข้อผิดพลาด ดึงความสนใจของคุณไปที่เซลล์นั้นและกระตุ้นให้ตรวจสอบสาเหตุ ISERRORVLOOKUP จะส่งกลับ "ไม่" ในกรณีนี้ ซึ่งจะบดบังปัญหาและให้ผลลัพธ์ที่ผิดอย่างแน่นอน

    ควรใช้เมื่อใด:

    สูตรนี้ ทำงานได้อย่างสวยงามในสถานการณ์ที่คุณต้องการแสดงข้อความบางส่วนเมื่อไม่พบค่าการค้นหาเท่านั้น และไม่ต้องการปกปิดปัญหาพื้นฐานด้วยสูตร VLOOKUP เอง เช่น เมื่อพิมพ์ชื่อของฟังก์ชันผิด (#NAME?) หรือไม่ได้ระบุเส้นทางแบบเต็มไปยังสมุดงานการค้นหา (#VALUE!)

    สำหรับข้อมูลเพิ่มเติม โปรดดูฟังก์ชัน ISNA ใน Excel พร้อมตัวอย่างสูตร

    IFNA VLOOKUP

    พร้อมใช้งานใน Excel 2013 และสูงกว่า

    เป็นการแทนที่ชุดค่าผสม IF ISNA ที่ทันสมัยซึ่งช่วยให้คุณจัดการกับข้อผิดพลาด #N/A ใน วิธีที่ง่ายกว่า

    IFNA(VLOOKUP(…), " text_if_error ")

    ต่อไปนี้เป็นสูตรย่อเทียบเท่ากับสูตร IF ISNA VLOOKUP ของเรา:

    =IFNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")

    <0

    ควรใช้เมื่อใด:

    เป็นทางออกที่ดีในการดักจับและจัดการกับข้อผิดพลาด #N/A ใน Excel เวอร์ชันใหม่ (2013 - 365)

    สำหรับรายละเอียดทั้งหมด โปรดดูฟังก์ชัน IFNA ของ Excel

    XLOOKUP

    รองรับใน Excel 2021 และ Excel 365

    เนื่องจากฟังก์ชัน "if error" ในตัว ฟังก์ชัน XLOOKUP เป็นวิธีที่ง่ายที่สุดในการค้นหาโดยไม่มีข้อผิดพลาด #N/A ใน Excel เพียงพิมพ์ข้อความที่เป็นมิตรต่อผู้ใช้ของคุณในอาร์กิวเมนต์ตัวเลือกที่ 4 ชื่อ if_not_found .

    ตัวอย่างเช่น:

    =XLOOKUP(A3, $D$3:$D$9, $E$3:$E$9, "No")

    ข้อจำกัด: ตรวจพบเฉพาะข้อผิดพลาด #N/A โดยไม่สนใจประเภทอื่นๆ

    สำหรับข้อมูลเพิ่มเติม โปรดดูฟังก์ชัน XLOOKUP ใน Excel

    อย่างที่คุณเห็น Excel มีตัวเลือกต่างๆ มากมายในการแก้ไขข้อผิดพลาดของ VLOOKUP หวังว่าบทช่วยสอนนี้จะให้ความกระจ่างเกี่ยวกับวิธีการใช้งานอย่างมีประสิทธิภาพ ขอขอบคุณที่อ่านและหวังว่าจะได้พบคุณในบล็อกของเราในสัปดาห์หน้า!

    ดาวน์โหลดได้

    ตัวอย่าง ISERROR พร้อม VLOOKUP (ไฟล์ .xlsx)

    Michael Brown เป็นผู้ที่ชื่นชอบเทคโนโลยีโดยเฉพาะและมีความหลงใหลในการทำให้กระบวนการที่ซับซ้อนง่ายขึ้นโดยใช้เครื่องมือซอฟต์แวร์ ด้วยประสบการณ์กว่าทศวรรษในอุตสาหกรรมเทคโนโลยี เขาได้ฝึกฝนทักษะของเขาใน Microsoft Excel และ Outlook รวมถึง Google ชีตและเอกสาร บล็อกของ Michael ทุ่มเทให้กับการแบ่งปันความรู้และความเชี่ยวชาญของเขากับผู้อื่น โดยให้คำแนะนำและแบบฝึกหัดที่ทำตามได้ง่ายเพื่อปรับปรุงผลิตภาพและประสิทธิภาพ ไม่ว่าคุณจะเป็นมืออาชีพที่ช่ำชองหรือมือใหม่ บล็อกของ Michael นำเสนอข้อมูลเชิงลึกอันมีค่าและคำแนะนำที่เป็นประโยชน์สำหรับการใช้ประโยชน์สูงสุดจากเครื่องมือซอฟต์แวร์ที่จำเป็นเหล่านี้