การเลือกใช้ VLookup ว่าจะใช้แบบ Approching Match หรือ Exact Match ตามปกติผมจะสอนให้ดูจากประเภทของข้อมูลเป็นหลัก

สูตรแบบ Exact Match ใช้กับข้อมูลประเภทรหัส ชื่อ ที่อยู่ ซึ่งหากหาค่าไม่พบต้องแสดง error ขึ้นมาให้เห็น โดยข้อมูลใน column ซ้ายสุดไม่จำเป็นต้องเรียงลำดับ

สูตรแบบ Approaching Match ใช้กับข้อมูลที่เป็นตัวเลขที่ต้องการหาค่าเป็นช่วงๆ เช่น คะแนนสอบ ปริมาณสินค้า โดยข้อมูลใน column ซ้ายสุดต้องเรียงค่าจากน้อยไปมาก

อย่างไรก็ตามมิใช่ว่าจะปล่อยให้เป็นหน้าที่ของผู้สร้างสูตรเป็นคนเลือกใช้สูตรตามประเภทข้อมูล แต่เราสามารถใช้สูตรตรวจสอบซ้อนเข้าไปเพื่อทำให้ Excel สามารถรับรู้ได้เองก็ได้ว่าเมื่อใด VLookup จะทำงานแบบใด ขึ้นกับลักษณะของข้อมูลว่าเรียงกับมีค่าเดียวหรือไม่

เนื่องจากสูตรแบบ Approaching Match ทำงานเร็วกว่าแบบ Exact Match อย่างมากเพราะข้อมูลเรียงจากน้อยไปมากทำให้ประหยัดเวลาไม่ต้องเทียบค่าทีละรายการไปเรื่อยๆ หากพบว่าข้อมูลเรียงลำดับจากน้อยไปมากและค่าที่ใช้หาไม่มีค่าซ้ำ ก็ควรหาทางทำให้ VLookup ทำงานแบบ Approaching Match แทน

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

=VLookup(ค่าที่ใช้หา,พื้นที่ตารางฐานข้อมูล, เลขที่ column ของคำตอบ, TRUE)
เพื่อทำงานแบบ Approaching Match

=VLookup(ค่าที่ใช้หา,พื้นที่ตารางฐานข้อมูล, เลขที่ column ของคำตอบ, FALSE)
เพื่อทำงานแบบ Exact Match

หน้าตาสูตรเป็นอย่างไรคิดออกไหมครับ

เนื้อหานี้อยู่ในหลักสูตรหันมาใช้ Excel จัดการข้อมูลแทน Access กันดีกว่า(ภาค 2) ครับ ตัวอย่างอยู่ท้ายวิดีโอตอนที่ 5 - 6