ฟังก์ชัน Excel VLOOKUP
พื้นที่ ฟังก์ชัน Excel VLOOKUP เป็นเครื่องมืออันทรงพลังที่ช่วยคุณค้นหาค่าที่ระบุโดยจับคู่กับคอลัมน์แรกของตารางหรือช่วงในแนวตั้ง แล้วส่งคืนค่าที่สอดคล้องกันจากคอลัมน์อื่นในแถวเดียวกัน แม้ว่า VLOOKUP จะมีประโยชน์อย่างเหลือเชื่อ แต่บางครั้งผู้เริ่มต้นก็อาจเข้าใจได้ยาก บทช่วยสอนนี้มีจุดมุ่งหมายเพื่อช่วยให้คุณเชี่ยวชาญ VLOOKUP ด้วยการจัดเตรียม คำอธิบายทีละขั้นตอนของข้อโต้แย้ง, ตัวอย่างที่เป็นประโยชน์ และ วิธีแก้ไขข้อผิดพลาดทั่วไป คุณอาจพบเมื่อใช้ฟังก์ชัน VLOOKUP
วิดีโอที่เกี่ยวข้อง
คำอธิบายทีละขั้นตอนของข้อโต้แย้ง
ดังที่แสดงในภาพด้านบน ฟังก์ชัน VLOOKUP จะใช้เพื่อค้นหาอีเมลตามหมายเลข ID ที่กำหนด ตอนนี้ฉันจะให้คำอธิบายโดยละเอียดเกี่ยวกับวิธีใช้ VLOOKUP ในตัวอย่างนี้ โดยแบ่งอาร์กิวเมนต์แต่ละรายการทีละขั้นตอน
ขั้นตอนที่ 1: เริ่มฟังก์ชัน VLOOKUP
เลือกเซลล์ (ในกรณีนี้คือ H6) เพื่อแสดงผลลัพธ์ จากนั้นเริ่มฟังก์ชัน VLOOKUP โดยพิมพ์เนื้อหาต่อไปนี้ในช่อง สูตรบาร์.
=VLOOKUP(
ขั้นตอนที่ 2: ระบุค่าการค้นหา
ขั้นแรก ระบุค่าการค้นหา (ซึ่งเป็นสิ่งที่คุณกำลังมองหา) ในฟังก์ชัน VLOOKUP ในที่นี้ ฉันอ้างอิงเซลล์ G6 ซึ่งมีหมายเลขประจำตัว 1005
=VLOOKUP(G6
ขั้นตอนที่ 3: ระบุอาร์เรย์ของตาราง
จากนั้น ระบุช่วงของเซลล์ที่มีทั้งค่าที่คุณต้องการและค่าที่คุณต้องการส่งคืน ในกรณีนี้ ฉันเลือกช่วง B6:E12 ตอนนี้สูตรปรากฏดังนี้:
=VLOOKUP(G6,B6:E12
=VLOOKUP(G6,$B$6:$E$12
ขั้นตอนที่ 4: ระบุคอลัมน์ที่คุณต้องการส่งคืนค่า
จากนั้นระบุคอลัมน์ที่คุณต้องการส่งคืนค่า
ในตัวอย่างนี้ เนื่องจากฉันต้องการส่งคืนอีเมลตามหมายเลข ID ฉันจึงป้อนหมายเลข 4 เพื่อบอกให้ VLOOKUP ส่งกลับค่าจากคอลัมน์ที่สี่ของช่วงข้อมูล
=VLOOKUP(G6,B6:E12,4
ขั้นตอนที่ 5: ค้นหาค่าประมาณหรือค่าที่ตรงกันทั้งหมด
สุดท้าย ให้พิจารณาว่าคุณกำลังมองหาการจับคู่แบบประมาณหรือแบบตรงทั้งหมด
- เพื่อค้นหา an คู่ที่เหมาะสมต้องใช้ FALSE เป็นอาร์กิวเมนต์สุดท้าย
- เพื่อค้นหา an การแข่งขันโดยประมาณ, ใช้ TRUE เป็นอาร์กิวเมนต์สุดท้าย หรือเว้นว่างไว้
ในตัวอย่างนี้ ฉันใช้ FALSE สำหรับการจับคู่แบบตรงทั้งหมด ตอนนี้สูตรมีลักษณะดังนี้:
=VLOOKUP(G6,B6:E12,4,FALSE
กดปุ่ม Enter เพื่อรับผลลัพธ์
ด้วยการอธิบายแต่ละอาร์กิวเมนต์ทีละรายการในตัวอย่างข้างต้น ไวยากรณ์และอาร์กิวเมนต์ของฟังก์ชัน VLOOKUP จะเข้าใจได้ง่ายขึ้นมาก
ไวยากรณ์และอาร์กิวเมนต์
=VLOOKUP (lookup_value, table_array, col_index, [range_lookup])
- lookup_value (จำเป็น): ค่า (ค่าจริงหรือการอ้างอิงเซลล์) ที่คุณต้องการ จำไว้ว่าค่านี้ต้องอยู่ในคอลัมน์แรกของ table_array
- Table_array (จำเป็น): ช่วงของเซลล์มีทั้งคอลัมน์ของค่าที่ค้นหาและคอลัมน์ของค่าที่ส่งกลับ
- Col_index (จำเป็น): จำนวนเต็มแสดงถึงหมายเลขคอลัมน์ที่มีค่าส่งคืน เริ่มต้นด้วยหมายเลข 1 สำหรับคอลัมน์ซ้ายสุดของ table_array
- ช่วง_lookup (ไม่บังคับ): ค่าตรรกะที่กำหนดว่าคุณต้องการให้ VLOOKUP ค้นหาค่าที่ตรงกันโดยประมาณหรือค่าที่ตรงกันทุกประการ
- การจับคู่โดยประมาณ - ตั้งค่าอาร์กิวเมนต์นี้เป็น TRUE, 1 หรือทิ้งไว้ ว่างเปล่า.
สำคัญ: หากต้องการค้นหาค่าที่ตรงกัน ค่าในคอลัมน์แรกของ table_array จะต้องเรียงลำดับจากน้อยไปหามาก ในกรณีที่ VLOOKUP ส่งกลับผลลัพธ์ที่ไม่ถูกต้อง - คู่ที่เหมาะสม - ตั้งค่าอาร์กิวเมนต์นี้เป็น FALSE or 0.
- การจับคู่โดยประมาณ - ตั้งค่าอาร์กิวเมนต์นี้เป็น TRUE, 1 หรือทิ้งไว้ ว่างเปล่า.
ตัวอย่าง
ส่วนนี้จะแสดงตัวอย่างบางส่วนเพื่อช่วยให้คุณมีความเข้าใจที่ครอบคลุมมากขึ้นเกี่ยวกับฟังก์ชัน VLOOKUP
ตัวอย่างที่ 1: การจับคู่แบบตรงทั้งหมดกับการจับคู่โดยประมาณใน VLOOKUP
หากคุณสับสนเกี่ยวกับการจับคู่แบบตรงทั้งหมดและการจับคู่โดยประมาณเมื่อใช้ VLOOKUP ส่วนนี้สามารถช่วยให้คุณคลายความสับสนได้
ตรงกันทุกประการใน VLOOKUP
ในตัวอย่างนี้ ฉันจะค้นหาชื่อที่เกี่ยวข้องตามคะแนนที่แสดงในช่วง E6:E8 ดังนั้นฉันจึงป้อนสูตรต่อไปนี้ในเซลล์ F6 และลากตัวจัดการป้อนอัตโนมัติลงไปที่ F8 ในสูตรนี้ อาร์กิวเมนต์สุดท้ายถูกระบุเป็น FALSE เพื่อทำการค้นหาการจับคู่แบบตรงทั้งหมด
=VLOOKUP(E6,$B$6:$C$12,2,FALSE)
อย่างไรก็ตาม เนื่องจากไม่มีคะแนน 98 ในคอลัมน์แรกของช่วงข้อมูล VLOOKUP จะส่งกลับผลลัพธ์ข้อผิดพลาด #N/A
การจับคู่โดยประมาณใน VLOOKUP
ยังคงใช้ตัวอย่างด้านบน หากคุณเปลี่ยนอาร์กิวเมนต์สุดท้ายเป็น TRUE, VLOOKUP จะทำการค้นหาการจับคู่โดยประมาณ หากไม่พบค่าที่ตรงกัน ระบบจะค้นหาค่าที่มากที่สุดถัดไปซึ่งน้อยกว่าค่าที่ค้นหา และส่งกลับผลลัพธ์ที่เกี่ยวข้อง
=VLOOKUP(E6,$B$6:$C$12,2,TRUE)
เนื่องจากไม่มีคะแนน 98 VLOOKUP จึงค้นหาค่าที่มากที่สุดถัดไปที่น้อยกว่า 98 ซึ่งก็คือ 95 และส่งกลับชื่อคะแนน 95 เป็นผลลัพธ์ที่ใกล้เคียงที่สุด
- ในกรณีการจับคู่โดยประมาณนี้ ค่าในคอลัมน์แรกของ table_array จะต้องเรียงลำดับจากน้อยไปหามาก มิฉะนั้น VLOOKUP อาจไม่ส่งคืนค่าที่ถูกต้อง
- ที่นี่ฉันล็อกอาร์เรย์ของตาราง ($B$6:$C$12) ในฟังก์ชัน VLOOKUP เพื่ออ้างอิงชุดข้อมูลที่สอดคล้องกันอย่างรวดเร็วเทียบกับค่าการค้นหาหลายค่า
ตัวอย่างที่ 2: ใช้ VLOOKUP ที่มีหลายเกณฑ์
ส่วนนี้สาธิตวิธีใช้ VLOOKUP กับหลายเงื่อนไขใน Excel ดังที่แสดงในภาพหน้าจอด้านล่าง หากคุณกำลังพยายามหาเงินเดือนตามชื่อที่ระบุ (ในเซลล์ H5) และแผนก (ในเซลล์ H6) ให้ทำตามขั้นตอนด้านล่างเพื่อดำเนินการให้เสร็จสิ้น
ขั้นตอนที่ 1: เพิ่มคอลัมน์ตัวช่วยเพื่อเชื่อมค่าจากคอลัมน์การค้นหาเข้าด้วยกัน
ในกรณีนี้ เราจำเป็นต้องสร้างคอลัมน์ตัวช่วยเพื่อเชื่อมค่าจาก ชื่อนามสกุล คอลัมน์และ แผนก คอลัมน์.
- เพิ่มคอลัมน์ตัวช่วยทางด้านซ้ายของช่วงข้อมูลและระบุส่วนหัวของคอลัมน์นี้ ดูภาพหน้าจอ:
- ในคอลัมน์ตัวช่วยนี้ เลือกเซลล์แรกใต้ส่วนหัว ป้อนสูตรต่อไปนี้ใน แถบสูตรและกด เข้าสู่.
=C6&" "&D6
หมายเหตุ / รายละเอียดเพิ่มเติม: ในสูตรนี้ เราใช้เครื่องหมายและ (&) เพื่อรวมข้อความในสองคอลัมน์เพื่อสร้างข้อความชิ้นเดียว- C6 เป็นชื่อแรกของ ชื่อนามสกุล คอลัมน์ที่จะเข้าร่วม D6 เป็นแผนกแรกของ แผนก คอลัมน์ที่จะเข้าร่วม
- ค่าของเซลล์ทั้งสองนี้เชื่อมกันด้วยช่องว่างระหว่าง
- เลือกเซลล์ผลลัพธ์นี้ จากนั้นลาก ที่จับการป้อนอัตโนมัติ ลงเพื่อใช้สูตรนี้กับเซลล์อื่นในคอลัมน์เดียวกัน
ขั้นตอนที่ 2: ใช้ฟังก์ชัน VLOOKUP กับเกณฑ์ที่กำหนด
เลือกเซลล์ที่คุณต้องการแสดงผลลัพธ์ (ในที่นี้ฉันเลือก I7) ป้อนสูตรต่อไปนี้ใน แถบสูตรจากนั้นกด เข้าสู่.
=VLOOKUP(I5& " "&I6,B6:F12,5,FALSE)
ผล
- ต้องใช้คอลัมน์ตัวช่วยเป็นคอลัมน์แรกของช่วงข้อมูล
- ตอนนี้คอลัมน์เงินเดือนเป็นคอลัมน์ที่ห้าของช่วงข้อมูล เราจึงใช้ตัวเลขนี้ 5 เป็นดัชนีคอลัมน์ในสูตร
- เราต้องเข้าร่วมเกณฑ์ใน I5 และ I6 (I5& " "&I6) แบบเดียวกับคอลัมน์ตัวช่วยและใช้ค่าที่ต่อกันเป็น lookup_value อาร์กิวเมนต์ในสูตร
- คุณยังสามารถใส่เงื่อนไขทั้งสองโดยตรงในอาร์กิวเมนต์ lookup_value และคั่นด้วยช่องว่าง (หากเงื่อนไขเป็นข้อความ อย่าลืมใส่เครื่องหมายคำพูดคู่)
=VLOOKUP("Albee IT",B6:F12,5,FALSE)
- ทางเลือกที่ดีกว่า - ค้นหาด้วยหลายเกณฑ์ในไม่กี่วินาที
พื้นที่ การค้นหาแบบหลายเงื่อนไข คุณลักษณะของ Kutools for Excel สามารถช่วยให้คุณค้นหาด้วยหลายเกณฑ์ได้อย่างง่ายดายในไม่กี่วินาที ทดลองใช้ฟีเจอร์เต็มรูปแบบฟรี 30 วันทันที!
ข้อผิดพลาดทั่วไปของ VLOOKUP และแนวทางแก้ไข
ส่วนนี้แสดงรายการข้อผิดพลาดทั่วไปที่คุณอาจพบเมื่อใช้ VLOOKUP และนำเสนอวิธีแก้ไข
ข้อผิดพลาด #N/A กำลังส่งคืน
ข้อผิดพลาดที่พบบ่อยที่สุดกับ VLOOKUP คือข้อผิดพลาด #N/A ซึ่งหมายความว่า Excel ไม่พบค่าที่คุณต้องการ ต่อไปนี้เป็นสาเหตุบางประการที่ทำให้ VLOOKUP อาจแสดงข้อผิดพลาด #N/A
เหตุผลที่ 1: ค่าการค้นหาไม่ได้อยู่ในคอลัมน์แรกของ table_array
ข้อจำกัดอย่างหนึ่งของ Excel VLOOKUP คืออนุญาตให้คุณมองจากซ้ายไปขวาเท่านั้น ดังนั้น ค่าการค้นหาจะต้องอยู่ในคอลัมน์แรกของ table_array
ดังที่แสดงในภาพด้านล่าง ฉันต้องการคืนชื่อตามตำแหน่งงานที่กำหนด นี่คือค่าการค้นหา (ผู้จัดการฝ่ายขาย) อยู่ในคอลัมน์ที่สองของ table_array และค่าส่งคืนจะอยู่ทางซ้ายของคอลัมน์ค้นหา ดังนั้น VLOOKUP จึงส่งกลับข้อผิดพลาด #N/A
โซลูชัน
คุณสามารถใช้วิธีแก้ปัญหาต่อไปนี้เพื่อแก้ไขข้อผิดพลาดนี้
- จัดเรียงคอลัมน์ใหม่
คุณสามารถจัดเรียงคอลัมน์ใหม่เพื่อวางคอลัมน์ค้นหาในคอลัมน์แรกของ table_array - ใช้ฟังก์ชัน INDEX และ MATCH ร่วมกัน
ในที่นี้เราใช้ฟังก์ชัน INDEX และ MATCH ร่วมกันแทน VLOOKUP เพื่อแก้ปัญหานี้=INDEX(B6:B12,MATCH(F6,C6:C12,0))
- ใช้ฟังก์ชัน XLOOKUP (พร้อมใช้งานใน Excel 365, Excel 2021 และรุ่นที่ใหม่กว่า)
=XLOOKUP(F6,C6:C12,B6:B12)
เหตุผลที่ 2: ไม่พบค่าการค้นหาในคอลัมน์การค้นหา (ตรงทั้งหมด)
หนึ่งในสาเหตุที่พบบ่อยที่สุดที่ทำให้ VLOOKUP ส่งกลับข้อผิดพลาด #N/A เป็นเพราะไม่พบค่าที่คุณต้องการ
ดังที่แสดงในตัวอย่างด้านล่าง เราจะค้นหาชื่อตามคะแนน 98 ที่กำหนดใน E6 อย่างไรก็ตาม คะแนนนี้ไม่มีอยู่ในคอลัมน์แรกของช่วงข้อมูล ดังนั้น VLOOKUP จึงแสดงผลลัพธ์ข้อผิดพลาด #N/A
โซลูชัน
หากต้องการแก้ไขข้อผิดพลาดนี้ คุณสามารถลองใช้วิธีใดวิธีหนึ่งต่อไปนี้
- หากคุณต้องการให้ VLOOKUP ค้นหาค่าที่มากที่สุดถัดไปซึ่งน้อยกว่าค่าการค้นหา ให้เปลี่ยนอาร์กิวเมนต์สุดท้าย FALSE (ตรงเป๊ะ)ถึง TRUE (การแข่งขันโดยประมาณ). สำหรับข้อมูลเพิ่มเติมโปรดดู ตัวอย่างที่ 1: การจับคู่แบบตรงทั้งหมดกับการจับคู่โดยประมาณโดยใช้ VLOOKUP.
- หากต้องการหลีกเลี่ยงการเปลี่ยนอาร์กิวเมนต์สุดท้ายและรับการเตือนในกรณีที่ไม่พบค่าการค้นหา คุณสามารถปิดฟังก์ชัน VLOOKUP ภายในฟังก์ชัน IFERROR:
=IFERROR(VLOOKUP(E8,$B$6:$C$12,2,FALSE),"Not found")
เหตุผลที่ 3: ค่าการค้นหาน้อยกว่าค่าที่น้อยที่สุดในคอลัมน์การค้นหา (ค่าที่ตรงกันโดยประมาณ)
ดังที่แสดงในภาพด้านล่าง คุณกำลังค้นหาการจับคู่โดยประมาณ ค่าที่คุณกำลังค้นหา (หมายเลข ID 1001 ในกรณีนี้) น้อยกว่าค่าที่น้อยที่สุด 1002 ในคอลัมน์การค้นหา ดังนั้น VLOOKUP จะส่งกลับข้อผิดพลาด #N/A
โซลูชัน
นี่คือสองวิธีแก้ปัญหาสำหรับคุณ
- ตรวจสอบให้แน่ใจว่าค่าการค้นหามากกว่าหรือเท่ากับค่าที่น้อยที่สุดในคอลัมน์การค้นหา
- หากคุณต้องการให้ Excel เตือนคุณว่าไม่พบค่าการค้นหา ให้ซ้อนฟังก์ชัน VLOOKUP ไว้ในฟังก์ชัน IFERROR ดังนี้:
=IFERROR(VLOOKUP(G6,B6:E12,4,TRUE),"Not found")
เหตุผลที่ 4: ตัวเลขถูกจัดรูปแบบเป็นข้อความ
ดังที่คุณเห็นในภาพหน้าจอด้านล่าง ผลลัพธ์ข้อผิดพลาด #N/A ในตัวอย่างนี้เกิดจากชนิดข้อมูลไม่ตรงกันระหว่างเซลล์ค้นหา (G6) และคอลัมน์ค้นหา (B6:B12) ของตารางต้นฉบับ ค่าใน G6 จะเป็นตัวเลข และค่าในช่วง B6:B12 จะเป็นตัวเลขในรูปแบบข้อความ
โซลูชัน
ในการแก้ปัญหานี้ คุณต้องแปลงค่าการค้นหากลับเป็นตัวเลข นี่คือสองวิธีสำหรับคุณ
- ใช้คุณสมบัติแปลงเป็นตัวเลข
คลิกที่เซลล์ที่คุณต้องการแปลงข้อความเป็นตัวเลข เลือกปุ่มนี้ข้างเซลล์แล้วเลือก แปลงเป็นตัวเลข.
- ใช้เครื่องมือที่มีประโยชน์เพื่อแปลงเป็นชุดระหว่างข้อความและตัวเลข
พื้นที่ แปลงระหว่างข้อความและตัวเลข คุณลักษณะของ Kutools for Excel ช่วยให้คุณแปลงช่วงของเซลล์จากข้อความเป็นตัวเลขและในทางกลับกันได้อย่างง่ายดาย ทดลองใช้ฟีเจอร์เต็มรูปแบบฟรี 30 วันทันที!
เหตุผลที่ 5: table_array ไม่คงที่เมื่อลากสูตร VLOOKUP ไปยังเซลล์อื่น
ดังที่แสดงในภาพหน้าจอด้านล่าง มีค่าการค้นหาสองค่าใน E6 และ E7 หลังจากได้ผลลัพธ์แรกใน F6 แล้ว ให้ลากสูตร VLOOKUP จากเซลล์ F6 ไปที่ F7 ซึ่งจะแสดงผลลัพธ์ข้อผิดพลาด #N/A นั่นเป็นเพราะการอ้างอิงเซลล์ (B6:C12) เป็นแบบสัมพัทธ์ตามค่าเริ่มต้น และปรับเปลี่ยนเมื่อคุณเลื่อนลงมาตามแถวต่างๆ อาร์เรย์ของตารางถูกย้ายลงไปที่ B7:C13 ซึ่งไม่มีคะแนนการค้นหา 73 อีกต่อไป
Solution
คุณต้องล็อคอาร์เรย์ตารางเพื่อให้คงที่โดยเพิ่ม $ ลงชื่อก่อนแถวและคอลัมน์ในการอ้างอิงเซลล์ หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับการอ้างอิงแบบสัมบูรณ์ใน Excel โปรดดูบทช่วยสอนนี้: การอ้างอิงแบบสัมบูรณ์ของ Excel (วิธีทำและใช้งาน).
ข้อผิดพลาด #VALUE ถูกส่งคืน
เงื่อนไขต่อไปนี้อาจทำให้ VLOOKUP ส่งคืนผลลัพธ์ข้อผิดพลาด #VALUE
เหตุผลที่ 1: ค่าการค้นหาเกิน 255 อักขระ
ดังที่แสดงในภาพหน้าจอด้านล่าง ค่าการค้นหาในเซลล์ H4 เกิน 255 อักขระ ดังนั้น VLOOKUP จะส่งกลับผลลัพธ์ข้อผิดพลาด #VALUE
โซลูชัน
เพื่อหลีกเลี่ยงข้อจำกัดนี้ คุณสามารถใช้ฟังก์ชันการค้นหาอื่นที่สามารถจัดการสตริงที่ยาวขึ้นได้ ลองใช้สูตรใดสูตรหนึ่งต่อไปนี้
- ดัชนีและการจับคู่:
=INDEX(E5:E11, MATCH(TRUE, INDEX(B5:B11=H4, 0), 0))
- ฟังก์ชัน XLOOKUP (พร้อมใช้งานใน Excel 365, Excel 2021 และเวอร์ชันที่ใหม่กว่า):
=XLOOKUP(H4,B5:B11,E5:E11)
เหตุผลที่ 2: อาร์กิวเมนต์ col_index น้อยกว่า 1
ดัชนีคอลัมน์ระบุหมายเลขคอลัมน์ในอาร์เรย์ของตารางที่มีค่าที่คุณต้องการส่งคืน อาร์กิวเมนต์นี้ต้องเป็นจำนวนบวกที่สอดคล้องกับคอลัมน์ที่ถูกต้องในอาร์เรย์ของตาราง
หากคุณป้อนดัชนีคอลัมน์ที่น้อยกว่า 1 (เช่น ศูนย์หรือค่าลบ) VLOOKUP จะไม่สามารถระบุตำแหน่งคอลัมน์ในอาร์เรย์ของตารางได้
Solution
ในการแก้ไขปัญหานี้ ตรวจสอบให้แน่ใจว่าอาร์กิวเมนต์ดัชนีคอลัมน์ในสูตร VLOOKUP ของคุณเป็นจำนวนบวกที่สอดคล้องกับคอลัมน์ที่ถูกต้องในอาร์เรย์ของตาราง
ข้อผิดพลาด #REF กำลังส่งคืน
ส่วนนี้แสดงสาเหตุหนึ่งที่ทำให้ VLOOKUP ส่งกลับข้อผิดพลาด #REF และเสนอวิธีแก้ไขปัญหานี้
เหตุผล: อาร์กิวเมนต์ col_index มากกว่าจำนวนคอลัมน์
ดังที่คุณเห็นในภาพหน้าจอด้านล่าง อาร์เรย์ของตารางมีเพียง 4 คอลัมน์เท่านั้น อย่างไรก็ตาม ดัชนีคอลัมน์ที่คุณระบุในสูตร VLOOKUP คือ 5 ซึ่งมากกว่าจำนวนคอลัมน์ในอาร์เรย์ของตาราง ด้วยเหตุนี้ VLOOKUP จะไม่สามารถระบุตำแหน่งคอลัมน์ได้ และจะส่งกลับข้อผิดพลาด #REF ในท้ายที่สุด
โซลูชัน
- ระบุหมายเลขคอลัมน์ที่ถูกต้อง
ตรวจสอบให้แน่ใจว่าอาร์กิวเมนต์ดัชนีคอลัมน์ในสูตร VLOOKUP เป็นตัวเลขที่สอดคล้องกับคอลัมน์ที่ถูกต้องในอาร์เรย์ของตาราง
- รับหมายเลขคอลัมน์โดยอัตโนมัติตามส่วนหัวของคอลัมน์ที่ระบุ
ถ้าตารางมีหลายคอลัมน์ คุณอาจมีปัญหาในการกำหนดหมายเลขดัชนีคอลัมน์ที่ถูกต้อง ที่นี่ คุณสามารถซ้อนฟังก์ชัน MATCH ในฟังก์ชัน VLOOKUP เพื่อค้นหาตำแหน่งของคอลัมน์ตามส่วนหัวของคอลัมน์
=VLOOKUP(G6,B6:E12,MATCH("Email",B5:E5,0),FALSE)
หมายเหตุ: ในสูตรข้างต้น, the MATCH("อีเมล",B5:E5, 0) ฟังก์ชันใช้เพื่อรับหมายเลขคอลัมน์ของ "อีเมล" คอลัมน์ในช่วงวันที่ B6:E12 ผลลัพธ์ที่ได้คือ 4 ซึ่งใช้เป็น col_index ในฟังก์ชัน VLOOKUP
กำลังส่งคืนค่าที่ไม่ถูกต้อง
หากคุณพบว่า VLOOKUP ไม่ส่งคืนผลลัพธ์ที่ถูกต้อง อาจเกิดจากสาเหตุต่อไปนี้
เหตุผลที่ 1: คอลัมน์การค้นหาไม่ได้เรียงลำดับจากน้อยไปหามาก
หากคุณตั้งค่าอาร์กิวเมนต์สุดท้ายเป็น TRUE (หรือ ปล่อยให้มันว่างเปล่า) สำหรับการจับคู่โดยประมาณ และคอลัมน์การค้นหาไม่ได้เรียงลำดับจากน้อยไปหามาก ค่าผลลัพธ์อาจไม่ถูกต้อง
Solution
การเรียงลำดับคอลัมน์การค้นหาจากน้อยไปหามากสามารถช่วยคุณแก้ปัญหานี้ได้ ในการทำเช่นนี้ โปรดทำตามขั้นตอนด้านล่าง:
- เลือกเซลล์ข้อมูลในคอลัมน์ค้นหา ไปที่ ข้อมูล คลิกแท็บ เรียงลำดับจากน้อยที่สุดไปหามากที่สุด ใน จัดเรียงและกรอง กลุ่ม
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร คำเตือนการเรียงลำดับ กล่องโต้ตอบเลือกไฟล์ ขยายส่วนที่เลือก แล้วคลิก OK.
เหตุผลที่ 2: มีการแทรกหรือลบคอลัมน์
ดังที่แสดงในภาพหน้าจอด้านล่าง ค่าเดิมที่ฉันต้องการส่งคืนอยู่ในคอลัมน์ที่สี่ของอาร์เรย์ตาราง ดังนั้นฉันจึงระบุหมายเลข col_index เป็น 4 เมื่อแทรกคอลัมน์ใหม่ คอลัมน์ผลลัพธ์จะกลายเป็นคอลัมน์ที่ห้าของตาราง อาร์เรย์ ทำให้ VLOOKUP คืนผลลัพธ์จากคอลัมน์ที่ไม่ถูกต้อง
โซลูชัน
นี่คือสองวิธีแก้ปัญหาสำหรับคุณ
- คุณสามารถเปลี่ยนหมายเลขดัชนีคอลัมน์ให้ตรงกับตำแหน่งของคอลัมน์ส่งคืนได้ด้วยตนเอง สูตรที่นี่ควรเปลี่ยนเป็น:
=VLOOKUP(H6,B6:F12,5,FALSE)
- หากคุณต้องการส่งคืนผลลัพธ์จากคอลัมน์ certian เสมอ เช่น คอลัมน์อีเมลในตัวอย่างนี้ สูตรต่อไปนี้สามารถช่วยจับคู่ดัชนีคอลัมน์โดยอัตโนมัติตามส่วนหัวของคอลัมน์ที่กำหนด โดยไม่คำนึงว่าคอลัมน์จะถูกแทรกหรือลบออกจากอาร์เรย์ของตารางหรือไม่
=VLOOKUP(H6,B6:F12,MATCH("Email",B5:E5,0),FALSE)
หมายเหตุฟังก์ชันอื่นๆ
- VLOOKUP จะค้นหาค่าจากซ้ายไปขวาเท่านั้น
ค่าการค้นหาอยู่ในคอลัมน์ซ้ายสุด และค่าผลลัพธ์ควรอยู่ในคอลัมน์ใดๆ ทางขวาของคอลัมน์ค้นหา - หากคุณเว้นอาร์กิวเมนต์สุดท้ายว่างไว้ VLOOKUP จะใช้การจับคู่โดยประมาณตามค่าเริ่มต้น
- VLOOKUP ทำการค้นหาโดยไม่คำนึงถึงขนาดตัวพิมพ์
- สำหรับการจับคู่หลายรายการ VLOOKUP จะส่งกลับเฉพาะรายการแรกที่ตรงกันที่พบในอาร์เรย์ตาราง โดยอิงตามลำดับของแถวในอาร์เรย์ตาราง
บทความที่เกี่ยวข้อง
20+ ตัวอย่าง VLOOKUP สำหรับผู้ใช้ Excel ระดับเริ่มต้นและระดับสูง
บทช่วยสอนนี้สาธิตวิธีใช้ฟังก์ชัน Vlookup ใน Excel พร้อมตัวอย่างพื้นฐานและขั้นสูงมากมายทีละขั้นตอน
VLOOKUP จากขวาไปซ้าย
หากคุณต้องการค้นหาค่าเฉพาะในคอลัมน์อื่นๆ และส่งกลับค่าสัมพัทธ์ไปทางซ้าย วิธีการในบทช่วยสอนนี้สามารถช่วยให้คุณทำงานนี้ได้สำเร็จ
Vlookup จากล่างขึ้นบน
บทช่วยสอนนี้มีสองวิธีที่จะช่วยคุณค้นหาค่าที่ตรงกันจากล่างขึ้นบน
ทำ vlookup ที่คำนึงถึงตัวพิมพ์เล็กและใหญ่
หากคุณต้องการทำ VLOOKUP ที่คำนึงถึงตัวพิมพ์เล็กและใหญ่ใน Excel วิธีการในบทช่วยสอนนี้สามารถช่วยคุณได้
VLOOKUP รักษาการจัดรูปแบบต้นฉบับ
บทช่วยสอนนี้มีวิธีการที่จะช่วยให้คุณรักษาการจัดรูปแบบทั้งหมดของเซลล์ผลลัพธ์เมื่อทำ Vlookup ใน Excel
สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน
เสริมทักษะ Excel ของคุณด้วย Kutools for Excelและสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools for Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...
Office Tab นำอินเทอร์เฟซแบบแท็บมาสู่ Office และทำให้งานของคุณง่ายขึ้นมาก
- เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
- เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
- เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!

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