XLookup ช้ากว่า Vlookup แบบเห็นๆ ... ใครว่าเร็วกว่าล่ะ

😎 XLookup ช้ากว่า Vlookup แบบเห็นๆ ... ใครว่าเร็วกว่าล่ะ

สูตร XLookup มีโครงสร้างที่ลอกมาจากสูตร Lookup ที่มีมานานแล้วตั้งแต่ Excel รุ่นแรกๆก็ว่าได้

=Lookup(ค่าที่ใช้หา, พื้นที่แนวตั้งที่เก็บค่าที่ใช้หา, พื้นที่แนวตั้งของคำตอบที่ต้องการ)

=XLookup(ค่าที่ใช้หา, พื้นที่แนวตั้งที่เก็บค่าที่ใช้หา, พื้นที่แนวตั้งของคำตอบที่ต้องการ)

✂️ ทั้งสองสูตรนี้ที่ไม่เหมือนกันก็คือ Lookup ใช้กับตารางที่เรียงค่าจากน้อยไปมากเท่านั้น ทำให้โอกาสใช้งานน้อยมาก ส่วน XLookup ปรับให้หาจากตารางที่ไม่เรียงหรือจะเรียงก็ได้

🤝 ส่วนสิ่งที่เหมือนกัน XLookup กับ Lookup จะหาค่าจากแนวตั้งหรือแนวนอนก็ได้ ขอให้พื้นที่แนวที่ใช้มีขนาดเท่ากันก็พอ และไม่จำเป็นต้องหาค่าจาก Column ซ้ายวิ่งไปหาคำตอบจาก Column ด้านขวาเหมือน VLookup

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

☝️ แต่สาเหตุที่ตารางไม่จำเป็นต้องติดกันนี่เอง ที่ทำให้กว่าจะสร้างสูตร XLookup หรือ Lookup ต้องใช้เวลาสร้างนานกว่า VLookup ที่ใช้กับตารางพื้นที่เดียวแล้วเวลาจะหาคำตอบจาก column ไหนก็ใส่เลขที่ column ลงไปให้ถูกก็พอ

=VLookup(F3,MyData,2) หาคำตอบจาก Column ที่ 2 ใน MyData
=VLookup(F3,MyData,3) หาคำตอบจาก Column ที่ 3 ใน MyData
=VLookup(F3,MyData,4) หาคำตอบจาก Column ที่ 4 ใน MyData
....
=VLookup(F3,MyData,100) หาคำตอบจาก Column ที่ 100 ใน MyData

VLookup vs XLookup Steps

พอจะเปลี่ยนไปใช้ XLookup ก็จะมีหน้าตาสูตรแบบนี้ =XLookup (F3, Rangeของรหัส, Rangeคำตอบนั้นๆ)

=XLookup (F3, Rangeของรหัส, Rangeคำตอบเรื่องที่ 1)
=XLookup (F3, Rangeของรหัส, Rangeคำตอบเรื่องที่ 2)
=XLookup (F3, Rangeของรหัส, Rangeคำตอบเรื่องที่ 3)
...
=XLookup (F3, Rangeของรหัส, Rangeคำตอบเรื่องที่ 100)

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

Excel รุ่นใหม่ที่ว่ามีสูตรที่คำนวณได้เร็วกว่ารุ่นก่อนๆ มาตกม้าตายตอนวิธีการสร้างสูตรนี่เอง ถ้ายังใช้วิธีคลิกเมาส์ลากพื้นที่ ยังไงๆก็ช้าเหมือนเดิม

วิธีที่จะทำให้สร้างสูตรได้ Fast and Easy ต้องเริ่มจากการตั้งชื่อ Range Name แยกตามตารางแต่ละแถวไว้ก่อนโดยใช้คำสั่ง Formulas > Create from selection มาช่วย จากนั้นในการสร้างสูตรใดก็ตาม ให้กดปุ่ม F3 นำชื่อ Range Name นั้นๆมาใช้ในสูตร ตามแบบที่ผมสอนและทำคลิปอวดให้ดูมาตลอดนั่นเองครับ

👉 ถ้าใช้ Range Name
=XLookup(F3, ID, Name)
=XLookup(F3, ID, Amount)

เมื่อสร้างงานได้เร็วและใช้สูตร XLookup ที่คำนวณได้เร็ว แบบนี้จึงจะเรียกว่า เร็วกว่า

++++++++++++++++++++++

ปล

สูตร VLookup ในภาพนี้หาคำตอบของรหัส a003 ผิด ต้องแก้สูตรให้หาค่าแบบ Exact match โดยใส่เลข 0 เพิ่มต่อท้ายในสูตรแบบนี้

=VLookup(F3,MyData,2,0)
=VLookup(F3,MyData,3,0)

ส่วน XLookup หาคำตอบถูกต้องเพราะทำงานแบบ Exact match เป็น default ในตัวอยู่แล้ว

อ่านวิธีสร้าง Range Name ได้จาก https://www.excelexperttraining.com/book/index.php/course-manuals/excel-expert-tips-tricks-and-traps/range-name

ชมคลิปบทเรียนที่ 7 เป็นบทย่อที่ผมสอนในหลักสูตรเรื่องรีบรู้เพื่อพร้อมใช้ Excel ทำงานแบบ Fast and Easy ชมฟรี
https://www.excelexperttraining.com/book/index.php/excel-articles-and-videos/excel-expert-training/ready-for-working-videos

Related Articles

© Copyright 1999

สงวนลิขสิทธิ์ตามกฎหมาย

ห้ามนำข้อความหรือส่วนหนึ่งส่วนใดของบทความหรือวิดีโอหรือรูปภาพไปใช้เพื่อการค้าขาย หรือเพื่อประโยชน์ส่วนตัว

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

ลิงก์เว็บ Excel Expert Training

เว็บสำหรับ เรียนออนไลน์

เว็บสำหรับ เรียนแบบกลุ่ม-ส่วนตัว

ติดตามข่าวสารได้จาก facebook

ถามปัญหาได้ที่ กลุ่มคนรัก Excel

และไลน์กลุ่ม Excel Expert Group

ที่อยู่และการติดต่อ

สมเกียรติ ฟุ้งเกียรติ 7/1 รามคำแหง ซอย 35 หัวหมาก บางกะปิ กทม 10240 โทร 097-140-5555, 02-718-9331

Excel@ExcelExpertTraining.com

sfk234x234