ฟังก์ชัน VLOOKUP ของ Excel ซึ่งหมายถึง "การค้นหาในแนวตั้ง" จะค้นหาค่าในคอลัมน์แรกของช่วงและส่งคืนค่าในคอลัมน์อื่น ๆ ในแถวเดียวกัน
ถ้าคุณไม่สามารถระบุได้ว่าเซลล์ใดมีข้อมูลเฉพาะ VLOOKUP เป็นวิธีที่มีประสิทธิภาพในการค้นหาข้อมูลนั้น เป็นประโยชน์อย่างยิ่งในสเปรดชีตยักษ์ที่ยากที่จะหาข้อมูล
คำแนะนำในบทความนี้ใช้กับ Excel 2016, 2013, 2010; Excel for Mac และ Excel for 365 / Online
วิธีการทำงาน VLOOKUP Function
VLOOKUP มักจะส่งกลับข้อมูลเพียงอย่างเดียวของข้อมูลเป็นเอาท์พุท
วิธีการทำงาน:
- คุณให้ชื่อหรือ lookup_value ที่บอก VLOOKUP แถวของตารางข้อมูลเพื่อค้นหาข้อมูลที่ต้องการ
- คุณใส่หมายเลขคอลัมน์เป็น col_index_num อาร์กิวเมนต์ซึ่งจะบอก VLOOKUP ว่าคอลัมน์ใดมีข้อมูลที่คุณต้องการ
- ฟังก์ชั่นจะค้นหา lookup_value ในคอลัมน์แรกของตารางข้อมูล
- VLOOKUP จะค้นหาและส่งคืนข้อมูลจากหมายเลขคอลัมน์ที่คุณกำหนดไว้ col_index_numจากแถวเดียวกับค่าการค้นหา
VLOOKUP อาร์กิวเมนต์และไวยากรณ์ของฟังก์ชัน
ไวยากรณ์สำหรับฟังก์ชัน VLOOKUP คือ:
= VLOOKUP (lookup_value, table_array, col_index_num, range_lookup)
ฟังก์ชัน VLOOKUP อาจดูสับสนเนื่องจากมีอาร์กิวเมนต์สี่ข้อ แต่ใช้งานได้ง่าย
อาร์กิวเมนต์ที่สี่สำหรับฟังก์ชัน VLOOKUP มีดังนี้:
lookup_value (จำเป็น): ค่าที่จะค้นหาในคอลัมน์แรกของอาร์เรย์ของตาราง
table_array (จำเป็น) - นี่คือตารางข้อมูล (ช่วงของเซลล์) ที่ VLOOKUP ค้นหาเพื่อค้นหาข้อมูลที่คุณต้องการ
- table_array ต้องมีอย่างน้อยสองคอลัมน์ของข้อมูล
- คอลัมน์แรกต้องมี lookup_value
col_index_num (จำเป็น) - นี่คือจำนวนคอลัมน์ของค่าที่คุณต้องการค้นหา
- หมายเลขเริ่มต้นด้วยคอลัมน์ 1
- ถ้าคุณอ้างอิงจำนวนมากกว่าจำนวนคอลัมน์ในอาร์เรย์ตารางฟังก์ชันจะส่งกลับ #REF! ความผิดพลาด
range_lookup (ไม่จำเป็น) - ระบุว่าค่า lookup อยู่ในช่วงที่มีอยู่ในอาร์เรย์ของตารางหรือไม่ อาร์กิวเมนต์ range_lookup คือ "TRUE" หรือ "FALSE" ใช้ TRUE สำหรับการจับคู่โดยประมาณและ FALSE สำหรับการจับคู่แบบตรงทั้งหมด หากข้ามไปค่าเป็น TRUE ตามค่าเริ่มต้น
หากอาร์กิวเมนต์ range_lookup เป็น TRUE:
- lookup_value คือค่าที่คุณต้องการตรวจสอบว่าอยู่ในช่วงที่กำหนดโดย table_array
- table_array มีช่วงทั้งหมดและคอลัมน์ที่มีค่าช่วง (เช่นสูงปานกลางหรือต่ำ)
- อาร์กิวเมนต์ col_index_num เป็นค่าช่วงที่เกิดขึ้น
วิธีอาร์กิวเมนต์ Range_Lookup ทำงาน
ใช้ตัวเลือก range_lookup อาร์กิวเมนต์มีความซับซ้อนสำหรับคนจำนวนมากที่เข้าใจดังนั้นจึงควรดูตัวอย่างสั้น ๆ
ตัวอย่างในภาพด้านบนใช้ฟังก์ชัน VLOOKUP เพื่อค้นหาอัตราคิดลดที่ขึ้นอยู่กับจำนวนสินค้าที่ซื้อ
ตัวอย่างแสดงให้เห็นว่าส่วนลดสำหรับการซื้อสินค้า 19 รายการเป็น 2% เนื่องจาก 19 ตกอยู่ระหว่าง 11 และ 21 ใน ปริมาณ คอลัมน์ของตารางค้นหา
เป็นผลให้ VLOOKUP ส่งกลับค่าจากคอลัมน์ที่สองของตารางค้นหาเนื่องจากแถวนั้นมีช่วงต่ำสุดที่น้อยที่สุด อีกวิธีหนึ่งในการตั้งค่าช่วงของตารางค้นหาคือการสร้างคอลัมน์ที่สองให้ได้สูงสุดและช่วงนี้จะมีค่าต่ำสุดที่ 11 และสูงสุด 20 แต่ผลก็เหมือนกัน
ในตัวอย่างสูตรต่อไปนี้ที่มีฟังก์ชัน VLOOKUP ใช้เพื่อหาส่วนลดสำหรับปริมาณสินค้าที่ซื้อ
= VLOOKUP (C2, $ C $ 5: $ D $ 8,2, TRUE)
- C2: นี่คือค่าการค้นหาซึ่งสามารถอยู่ในเซลล์ใดก็ได้ในสเปรดชีต
- $ C $ 5: $ D $ 8: นี่คือตารางคงที่ที่มีทุกช่วงที่คุณต้องการใช้
- 2: นี่เป็นคอลัมน์ในตารางค้นหาช่วงที่คุณต้องการให้ฟังก์ชัน LOOKUP กลับมา
- TRUE: เปิดใช้งาน range_lookup คุณสมบัติของฟังก์ชันนี้
เมื่อคุณกดแล้ว เข้าสู่และผลลัพธ์ในเซลล์แรกคุณสามารถป้อนทั้งคอลัมน์เพื่อค้นหาผลลัพธ์ช่วงสำหรับส่วนที่เหลือของเซลล์ในคอลัมน์การค้นหา
อาร์กิวเมนต์ range_lookup เป็นวิธีที่น่าสนใจในการจัดเรียงคอลัมน์ของตัวเลขผสมลงในหมวดหมู่ต่างๆ
VLOOKUP ข้อผิดพลาด: # N / A และ #REF
ฟังก์ชัน VLOOKUP อาจส่งคืนข้อผิดพลาดต่อไปนี้
# N / A คือข้อผิดพลาด "value not available" และเกิดขึ้นภายใต้เงื่อนไขต่อไปนี้:
- การค้นหา _value ไม่พบในคอลัมน์แรกของอาร์กิวเมนต์ table_array
- table_array อาร์กิวเมนต์ไม่ถูกต้อง ตัวอย่างเช่นอาร์กิวเมนต์อาจรวมถึงคอลัมน์ว่างที่ด้านซ้ายของช่วง
- range_lookup อาร์กิวเมนต์ถูกตั้งค่าเป็น FALSE และไม่สามารถหาคู่ที่ตรงกันได้สำหรับอาร์กิวเมนต์ lookup_value ในคอลัมน์แรกของ table_array
- range_lookup อาร์กิวเมนต์ถูกตั้งค่าเป็น TRUE และค่าทั้งหมดในคอลัมน์แรกของ table_array มีขนาดใหญ่กว่า lookup_value
#REF! ("อ้างอิงนอกขอบเขต") เกิดขึ้นหาก col_index_num มีค่ามากกว่าจำนวนคอลัมน์ใน table_array