VLOOKUP เพื่อค้นหาข้อมูลที่เกี่ยวข้องตามแถวได้ เช่น หากต้องการซื้อส้ม คุณสามารถใช้ VLOOKUP เพื่อค้นหาราคาการค้นหาแนวตั้ง แสดงผลค่าในคอลัมน์ข้อมูลในตำแหน่งที่พบรายการที่ตรงกันในคอลัมน์การค้นหา
ตัวอย่างการใช้งาน
VLOOKUP("Apple",table_name!fruit,table_name!price)
รูปแบบคำสั่ง
VLOOKUP(search_key, range,index, is_sorted)
search_key: ค่าที่จะค้นหาในคอลัมน์ค้นหาsearch_column: คอลัมน์ข้อมูลที่จะพิจารณาสําหรับการค้นหาresult_column: คอลัมน์ข้อมูลที่จะพิจารณาสำหรับผลการค้นหาis_sorted: [ไม่บังคับ] ลักษณะในการค้นหารายการที่ตรงกันสําหรับsearch_keyFALSE: แนะนําให้ใช้รูปแบบคำสั่งนี้สําหรับการจับคู่ที่ตรงกันทั้งหมดTRUE: สําหรับการจับคู่แบบใกล้เคียง ระบบจะใช้รูปแบบคำสั่งนี้เป็นค่าเริ่มต้นนี้หากไม่ได้ระบุis_sorted
เคล็ดลับ: ก่อนใช้การจับคู่แบบใกล้เคียง ให้จัดเรียงคำค้นหาตามลําดับจากน้อยไปมาก ไม่เช่นนั้น คุณอาจได้ผลลัพธ์ที่ไม่ถูกต้อง ดูสาเหตุที่อาจทําให้ผลลัพธ์ไม่ถูกต้อง
เคล็ดลับ: ใช้ XLOOKUP หากต้องการให้การค้นหาฐานข้อมูลใน BigQuery มีความยืดหยุ่นมากขึ้น
รูปแบบคำสั่ง
=VLOOKUP(search_key, range, index, [is_sorted])
อินพุต
search_key: ค่าที่จะค้นหาในคอลัมน์แรกของช่วงrange: ค่าระดับบนและล่างที่พิจารณาสําหรับการค้นหาindex: ดัชนีของคอลัมน์ที่มีค่าที่แสดงของช่วง ดัชนีต้องเป็นจำนวนเต็มบวกis_sorted: อินพุตที่ไม่บังคับ เลือกตัวเลือกต่อไปนี้FALSE= การจับคู่ที่ตรงกันทั้งหมด ซึ่งเป็นตัวเลือกที่แนะนําอย่างยิ่งTRUE= การจับคู่แบบใกล้เคียง โดยระบบจะใช้รูปแบบคำสั่งนี้เป็นค่าเริ่มต้นนี้หากไม่ได้ระบุis_sorted
สําคัญ: ก่อนใช้การจับคู่แบบใกล้เคียง ให้จัดเรียงคำค้นหาตามลําดับจากน้อยไปมาก ไม่เช่นนั้น คุณอาจได้ผลลัพธ์ที่ไม่ถูกต้อง ดูสาเหตุที่อาจทําให้ผลลัพธ์ไม่ถูกต้อง
ผลลัพธ์
ช่วงที่เลือก| อินพุต | คำอธิบาย |
search_key |
ค่านี้คือค่าที่คุณค้นหาในคอลัมน์แรกของ
range หากไม่ต้องการค่าที่ผิดพลาด คำค้นหาต้องอยู่ในคอลัมน์แรกของ range นอกจากนี้ ระบบยังรองรับการอ้างอิงเซลล์ด้วยวิธีการตรวจสอบแบบง่าย: เมื่อ
search_key อยู่ที่ B3 range ก็ควรเริ่มต้นด้วยคอลัมน์ B |
range |
อินพุตนี้คือ
range ซึ่งทำงานดังนี้
หากไม่ต้องค่าที่ผิดพลาด คำการค้นหาต้องอยู่ในคอลัมน์แรกของ
rangeวิธีการตรวจสอบแบบง่าย: เมื่อ
search_key อยู่ที่ B3 range ก็ควรเริ่มต้นด้วยคอลัมน์ B |
index |
เรียกอีกอย่างว่า "หมายเลขคอลัมน์" โดยข้อมูลนี้คือดัชนีของคอลัมน์ใน
range ที่มีค่าผลลัพธ์
หลังจากตั้งค่าช่วงแล้ว
VLOOKUP จะดูเฉพาะคอลัมน์คำค้นหาเมื่อดัชนี = 1 หรือคอลัมน์ที่อยู่ทางขวาเคล็ดลับ: เมื่อใช้
VLOOKUP ให้สมมติว่าคอลัมน์ของ range มีลำดับตัวเลขจากซ้ายไปขวาและเริ่มต้นด้วย 1 |
is_sorted |
อินพุตนี้ไม่บังคับ โดยมีตัวเลือกคือ
TRUE และ FALSE
เราขอแนะนำให้คุณทำดังนี้
|
| เอาต์พุต | คำอธิบาย |
| ผลลัพธ์ |
เอาต์พุตนี้คือค่าที่
VLOOKUP แสดงตามข้อมูลที่คุณป้อน ฟังก์ชัน VLOOKUP แต่ละรายการจะแสดงผลลัพธ์เพียงค่าเดียว
หากคุณพบค่าที่ไม่คาดคิดหรือข้อผิดพลาด เช่น #N/A หรือ #VALUE! ให้เริ่มแก้ปัญหา และหากต้องการแทนที่ #N/A ด้วยค่าอื่น โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้ IFNA() ใน VLOOKUP()
|
ตัวอย่าง VLOOKUP พื้นฐาน
VLOOKUP ในคำค้นหาต่างๆ
ใช้ VLOOKUP เพื่อค้นหาราคาของส้ม (Orange) และแอปเปิล (Apple)
เมื่อใช้ VLOOKUP คุณจะใช้คำค้นหาต่างๆ ได้ เช่น "Apple" และ "Orange"
range และหากไม่ต้องการป้อนค่าสําหรับคำค้นหา คุณก็ใช้การอ้างอิงเซลล์ เช่น "G9" ได้เช่นกันsearch_key คือ "Orange" |
=VLOOKUP("Orange", B4:D8, 3, FALSE)
ผลลัพธ์ = $1.01
|
search_key คือ "Apple" |
=VLOOKUP("Apple", B4:D8, 3, FALSE)
ผลลัพธ์ = $1.50
|
search_key ที่ใช้การอ้างอิงเซลล์ของ "Apple" ใน G9 |
=VLOOKUP(G9, B4:D8, 3, FALSE)
ผลลัพธ์ = $1.50
|
VLOOKUP ในดัชนีคอลัมน์ต่างๆ
VLOOKUP เพื่อค้นหาจํานวนส้ม (Orange) ในคอลัมน์ดัชนีที่ 2VLOOKUP ให้สมมติว่าคอลัมน์ของ range มีตัวเลขจากซ้ายไปขวาและเริ่มต้นจาก 1 หากต้องการดูข้อมูลเป้าหมาย คุณต้องระบุดัชนีคอลัมน์ เช่น คอลัมน์ที่ 2 สําหรับจํานวน
Index = 2ค้นหาจํานวนของส้ม (Orange) ซึ่งเป็นคอลัมน์ที่ 2 ของ
range |
=VLOOKUP(G3, B4:D8, 2, FALSE)
ผลลัพธ์ = 5
|
การจับคู่ที่ตรงกันทั้งหมดหรือการจับคู่แบบใกล้เคียงของ VLOOKUP
- ใช้การจับคู่ที่ตรงกันทั้งหมดของ
VLOOKUPเพื่อค้นหารหัสที่ตรงกัน - ใช้การจับคู่แบบใกล้เคียงของ
VLOOKUPเพื่อค้นหารหัสที่ใกล้เคียงกัน
is_sorted = TRUE เมื่อค้นหารายการที่ตรงกันมากที่สุด แต่ไม่ใช่รายการที่ตรงกันทั้งหมดis_sorted = FALSE ระบบจะแสดงผลลัพธ์ที่ตรงกันทั้งหมด เช่น ชื่อผลไม้สําหรับรหัส = 103 คือ กล้วย (Banana) หากไม่มีรายการที่ตรงกันทั้งหมด คุณจะได้รับข้อผิดพลาด #N/A เราจึงขอแนะนำให้คุณใช้การจับคู่ที่ตรงกันทั้งหมด เนื่องจากคาดเดาลักษณะการทำงานได้ดีกว่า| การจับคู่ที่ตรงกันทั้งหมด |
=VLOOKUP(G6, A4:D8, 2, FALSE)
ผลลัพธ์ = "Apple"
|
| การจับคู่แบบใกล้เคียง |
=VLOOKUP(G3, A4:D8, 2, TRUE)
หรือ
=VLOOKUP(G3, A4:D8, 2)
ผลลัพธ์ = "Banana"
|
การใช้งาน VLOOKUP ทั่วไป
แทนที่ค่าที่ผิดพลาดจาก VLOOKUP
VLOOKUP แสดงผลเมื่อไม่มีคำค้นหาอยู่ ในกรณีนี้หากไม่ต้องการให้ระบบแสดง #N/A ให้ใช้ฟังก์ชัน IFNA() เพื่อแทนที่ #N/A ดูข้อมูลเพิ่มเติมเกี่ยวกับ IFNA()|
เริ่มแรก
VLOOKUP แสดงผล #N/A เนื่องจากไม่มีคำค้นหา "Pencil" อยู่ในคอลัมน์ "Fruit"IFNA() จะแทนที่ค่าที่ผิดพลาด #N/A ด้วยอินพุตที่ 2 ที่ระบุในฟังก์ชัน ซึ่งในกรณีของเราคือ "NOT FOUND" |
=IFNA(VLOOKUP(G3, B4:D8, 3, FALSE),"NOT FOUND")
ผลลัพธ์ = “NOT FOUND”
|
เคล็ดลับ: หากคุณต้องการแทนที่ค่าที่ผิดพลาดอื่นๆ เช่น #REF! โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับ IFERROR()
VLOOKUP ที่มีหลายเกณฑ์
VLOOKUP โดยตรงกับหลายเกณฑ์ได้ ดังนั้นให้สร้างคอลัมน์ Helper ใหม่เพื่อใช้ VLOOKUP โดยตรงกับหลายเกณฑ์เพื่อรวมคอลัมน์ที่มีอยู่หลายรายการเข้าด้วยกัน| 1. คุณสามารถสร้างคอลัมน์ Helper ได้หากใช้ "&" เพื่อรวม First Name และ Last Name ไว้ด้วยกัน | =C4&D4 แล้วลากจาก B4 ลงไปยัง B8 เพื่อสร้างคอลัมน์ Helper |
| 2. ใช้การอ้างอิงเซลล์ B7 "JohnLee" เป็นคำค้นหา |
=VLOOKUP(B7, B4:E8, 4, FALSE)
ผลลัพธ์ = "Support"
|
VLOOKUP ที่มีไวลด์การ์ดหรือการจับคู่ที่ตรงกันบางส่วน
VLOOKUP คุณยังใช้ไวลด์การ์ดหรือการจับคู่ที่ตรงกันบางส่วนได้ด้วย โดยคุณสามารถใช้อักขระไวลด์การ์ดเหล่านี้ได้- เครื่องหมายคําถาม "?" จะจับคู่กับอักขระเดี่ยวตัวใดก็ได้
- เครื่องหมายดอกจัน "*" จะจับคู่กับลําดับอักขระใดก็ได้
VLOOKUP คุณต้องใช้การจับคู่ที่ตรงกันทั้งหมด: "is_sorted = FALSE"| "St*" ใช้เพื่อจับคู่กับทุกรายการที่ขึ้นต้นด้วย "St" โดยไม่คํานึงถึงจํานวนอักขระ เช่น "Steve", "St1", "Stock" หรือ "Steeeeeeve" |
=VLOOKUP("St*", B4:D8, 3, FALSE)
ผลลัพธ์ = "Marketing"
|
แก้ปัญหาข้อผิดพลาดและแนวทางปฏิบัติแนะนํา
ผลลัพธ์ที่ไม่ถูกต้อง-
แสดงผลลัพธ์ที่ไม่คาดคิด: หากคุณตั้งค่า
is_sortedเป็นTRUEแต่คอลัมน์แรกในช่วงไม่ได้จัดเรียงตามลําดับตัวเลขหรือมลําดับตัวอักษรจากน้อยไปมาก ให้เปลี่ยน is_sorted เป็นFALSE - VLOOKUP ให้ผลลัพธ์ที่ตรงกันรายการแรก:
VLOOKUPจะแสดงผลลัพธ์ที่ตรงกันรายการแรกเท่านั้น หากมีคำค้นหาที่ตรงกันหลายรายการ ระบบจะแสดงผลลพธ์ให้ แต่อาจไม่ใช่ค่าที่คาดไว้ - ข้อมูลไม่เป็นระเบียบ: ในบางครั้ง ค่าที่มีเว้นวรรคอยู่หน้าและหลังอาจดูเหมือนกัน แต่
VLOOKUPจะดำเนินการกับ 2 กรณีนี้แตกต่างกัน ตัวอย่างเช่น ค่าต่อไปนี้แตกต่างกันในVLOOKUP- " Apple"
- "Apple "
- "Apple"
VLOOKUP- หากใช้การจับคู่แบบใกล้เคียงหรือ
is_sorted=TRUEและหากคำค้นหาในVLOOKUPมีค่าน้อยกว่าค่าที่น้อยที่สุดในคอลัมน์แรก ในกรณีนี้VLOOKUPจะแสดงผลลัพธ์เป็น #N/A - หากใช้การจับคู่ที่ตรงกันทั้งหมดหรือ
is_sorted=FALSEระบบจะไม่พบรายการที่ตรงกันทั้งหมดของคำค้นหาในVLOOKUPในคอลัมน์แรก หากไม่ต้องการให้ผลลัพธ์เป็น #N/A เมื่อระบบไม่พบคำค้นหาในคอลัมน์แรก คุณสามารถใช้ฟังก์ชัน IFNA() ได้
range ด้วยตัวเลขที่มากกว่าจํานวนสูงสุดของคอลัมน์ range โดยไม่ได้ตั้งใจ ดังนั้นเพื่อหลีกเลี่ยงปัญหานี้ โปรดตรวจสอบว่าคุณทําสิ่งต่อไปนี้- นับคอลัมน์จาก
rangeที่เลือก ไม่ใช่ทั้งตาราง - เริ่มนับจาก 1 แทน 0
- ป้อนข้อความหรือชื่อคอลัมน์
indexไม่ถูกต้อง - ป้อนตัวเลขที่น้อยกว่า 1 ในส่วน
indexindexต้องมีค่าอย่างน้อยเท่ากับ 1 และน้อยกว่าจํานวนคอลัมน์สูงสุดของrangeVLOOKUPจะสามารถค้นหาเฉพาะในคอลัมน์คำค้นหาเท่านั้น ในกรณีที่index= 1 หรือคอลัมน์ที่อยู่ทางขวา
สําคัญ: index ยอมรับเฉพาะตัวเลขเท่านั้น
- คุณอาจไม่ได้ยกข้อความมาครบถ้วนในคำค้นหา ในกรณีที่
search_keyเป็นข้อความ
| สิ่งต้องทำ | เหตุผล |
ใช้การอ้างอิงแบบสัมบูรณ์สําหรับ range |
คุณควรใช้สิ่งต่อไปนี้
คุณไม่ควรใช้ชุดคำสั่งต่อไปนี้
เพื่อป้องกันการเปลี่ยนแปลงที่คาดเดาไม่ได้ในส่วน
range เมื่อมีการคัดลอกหรือลากลง |
จัดเรียงคอลัมน์แรกตามลําดับจากน้อยไปมากเมื่อใช้การจับคู่แบบใกล้เคียง เช่น is_sorted = TRUE |
หากใช้การจับคู่แบบใกล้เคียงหรือ is_sorted = TRUE คุณต้องจัดเรียงคอลัมน์แรกตามลําดับจากน้อยไปมาก ไม่เช่นนั้น คุณอาจมีโอกาสได้ผลลัพธ์ที่ไม่ถูกต้อง ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีจัดเรียง |
จัดระเบียบข้อมูลก่อนใช้ VLOOKUP |
ก่อนใช้
VLOOKUP อย่าลืมจัดระเบียบข้อมูลของคุณ เนื่องจากข้อมูลที่ไม่เป็นระเบียบอาจทําให้ VLOOKUP แสดงผลค่าที่คาดเดาไม่ได้ ซึ่งข้อผิดพลาดที่พบบ่อยเกี่ยวกับข้อมูลที่ไม่เป็นระเบียบมีดังนี้
หากต้องการตัดช่องว่างที่นำหน้าหรือตามหลังข้อความ คุณสามารถใช้ข้อมูล
|
| ไม่จัดเก็บค่าตัวเลขหรือวันที่เป็นข้อความ |
ตรวจสอบว่าระบบไม่ได้เก็บค่าวันที่หรือตัวเลขในคอลัมน์แรกของช่วง
VLOOKUP เป็นค่าข้อความ เช่น คอลัมน์คำค้นหา เนื่องจากคุณอาจได้ผลลัพธ์ที่ไม่คาดคิด
|