สารบัญ
VLOOKUP เป็นหนึ่งในฟังก์ชันทั่วไปและมีประโยชน์มากที่สุด เนื่องจากมีการใช้กันอย่างแพร่หลาย หลายคนจึงบ่นว่า VLOOKUP ทำงานไม่ถูกต้องหรือแสดงผลลัพธ์ไม่ถูกต้อง แม้ว่า VLOOKUP จะมีข้อจำกัดบางประการ แต่ข้อผิดพลาดส่วนใหญ่ที่เราได้รับคือการไม่เข้าใจไวยากรณ์อย่างถูกต้องหรือใช้งานไม่ระมัดระวัง ในบทความนี้ ฉันจะอธิบายว่าทำไม VLOOKUP ไม่ทำงาน
เพื่อให้คำอธิบายเข้าใจได้ ฉันจะใช้ชุดข้อมูลที่แสดงถึงข้อมูลผลิตภัณฑ์เกี่ยวกับร้านขายผลไม้แห่งใดแห่งหนึ่ง ชุดข้อมูลมี 5 คอลัมน์; ได้แก่ ผลไม้ , รหัสคำสั่งซื้อ ปริมาณ (กก.) ราคา และ วันที่สั่งซื้อ .
ดาวน์โหลดสู่แบบฝึกหัด
ดาวน์โหลดสมุดงานได้จากลิงก์ด้านล่างนี้
VLOOKUP ไม่ทำงานใน Excel.xlsx
8 เหตุผลที่ VLOOKUP ไม่ทำงาน
1. VLOOKUP ไม่ทำงานและแสดง N/ ข้อผิดพลาด
ในส่วนนี้ ฉันจะแสดงให้คุณเห็นว่าทำไมข้อผิดพลาด #N/A จึงเกิดขึ้นขณะทำงานกับ ฟังก์ชัน VLOOKUP และฉันจะแนะนำวิธีแก้ปัญหาที่ดีที่สุดให้คุณเพื่อหลีกเลี่ยง #N/A ข้อผิดพลาด
1.1. ช่องว่างนำหน้าและต่อท้าย
ในแผ่นข้อมูลขนาดใหญ่ มีความเป็นไปได้ที่จะมีช่องว่างเพิ่มเติมเป็นเรื่องปกติ นอกจากนี้ เป็นการยากที่จะระบุข้อผิดพลาดเนื่องจากคุณจะไม่ได้รับข้อผิดพลาดเว้นแต่คุณจะตรวจสอบชุดข้อมูลอย่างระมัดระวัง
ที่นี่ ฉันใช้สูตร VLOOKUP ฟังก์ชัน MATCH ยังใช้ FALSE เป็น range_lookup เพื่อรับ ตรงทั้งหมด .
ใน MATCH ฟังก์ชัน ฉันใช้ชื่อคอลัมน์ J3 เป็น lookup_value จากนั้นเลือกช่วงชื่อคอลัมน์ B3:G3 เป็น lookup_array จากนั้น ใช้ 0 เป็น match_type เพื่อใช้ ตรงทั้งหมด
กดปุ่ม ENTER ดังนั้น คุณจะได้ผลลัพธ์ที่ต้องการ
8. ค่าการค้นหามีค่าซ้ำกัน
ในกรณีที่ lookup_value มีค่าที่ซ้ำกัน ดังนั้น VLOOKUP จะไม่ทำงานสำหรับค่าที่มีอยู่ทั้งหมด
VLOOKUP ส่งคืนค่าแรกที่ตรงกับค่าที่คุณค้นหาเท่านั้น สำหรับ
วิธีแก้ไข :
เพื่อหลีกเลี่ยงปัญหาประเภทดังกล่าว คุณสามารถลบรายการที่ซ้ำกันหรือใช้ปุ่ม pivot table .
⏩ คุณสามารถลบรายการที่ซ้ำกันโดยใช้ ลบรายการที่ซ้ำกัน จากนั้น Ribbon
⏩ นอกจากนี้ คุณสามารถใช้ Pivot ตาราง .
ในการใช้งาน
ก่อนอื่น เลือกช่วงเซลล์
จากนั้น เปิดแท็บ แทรก >> เลือก Pivot Table
กล่องโต้ตอบ จะปรากฏขึ้น เลือกสถานที่ จากนั้นคลิก ตกลง
ตอนนี้ คุณสามารถเลือก ผลไม้ และ รหัสคำสั่งซื้อ ใน แถว จากนั้นระบบจะแสดง ที่มีอยู่ รหัสคำสั่งซื้อ ของ ผลไม้ ที่คุณเลือก
อ่านเพิ่มเติม: วิธีค้นหา ค่าที่ซ้ำกันใน Excelการใช้ VLOOKUP
ส่วนแบบฝึกหัด
ฉันได้ให้แบบฝึกหัดในสมุดงานเพื่อฝึกวิธีการอธิบายเหล่านี้
สรุป
ในบทความนี้ ฉันพยายามครอบคลุมสถานการณ์ทุกประเภทของ VLOOKUP ที่ไม่ทำงานพร้อมกับวิธีแก้ปัญหาเพื่อหลีกเลี่ยงข้อผิดพลาด วิธีต่างๆ เหล่านี้จะช่วยให้คุณทำงานกับฟังก์ชัน VLOOKUP ได้อย่างมีประสิทธิภาพและง่ายดายยิ่งขึ้น สุดท้ายแต่ไม่ท้ายสุด หากคุณมีคำแนะนำ แนวคิด หรือคำติชมใดๆ โปรดอย่าลังเลที่จะแสดงความคิดเห็นด้านล่าง
อย่างถูกต้องก่อนอื่น เลือกเซลล์เพื่อวางค่าผลลัพธ์ของคุณ
➤ ฉันเลือกเซลล์ I4
จากนั้น พิมพ์สูตรต่อไปนี้ลงใน แถบสูตร .
=VLOOKUP(H4,B4:F12,2)
ที่นี่ ใน VLOOKUP ฟังก์ชัน ฉันเลือกเซลล์ H4 เป็น lookup_value และเลือกช่วง B4:F12 เป็น table_array เนื่องจากฉันต้องการทราบ Order ID จึงกำหนดให้ 2 เป็น col_index_num .
กดปุ่ม ENTER ตอนนี้ คุณควรได้รับ รหัสคำสั่งซื้อ ของค่า look_up แต่จะแสดง #N/A
ตอนนี้ หลังจากดูที่ชุดข้อมูล คุณจะพบว่า lookup_value Apple มีช่องว่างนำหน้า ซึ่งเป็นสาเหตุที่ทำให้ VLOOKUP ไม่ทำงาน
วิธีแก้ไข :
หากต้องการลบช่องว่างนำหน้าหรือต่อท้าย ให้ใช้ lookup_value อาร์กิวเมนต์ที่มี ฟังก์ชัน TRIM ภายในฟังก์ชัน VLOOKUP
ให้ฉันแสดงให้คุณเห็นว่าคุณสามารถใช้ฟังก์ชัน TRIM ภายในฟังก์ชัน VLOOKUP ได้อย่างไร .
เพื่อหลีกเลี่ยงข้อผิดพลาด VLOOKUP พิมพ์สูตรต่อไปนี้ในเซลล์ที่คุณเลือก
=VLOOKUP(TRIM(H4),B4:F12,2)
ที่นี่ ฟังก์ชัน TRIM จะลบช่องว่างนำหน้าและต่อท้ายที่มีอยู่ทั้งหมดของเซลล์ที่เลือก H4 .
1.2. สำหรับการพิมพ์ผิด VLOOKUP ไม่ทำงาน
การพิมพ์ผิดของ lookup_value เป็นอีกสาเหตุหนึ่งที่ทำให้ VLOOKUP ไม่ทำงาน
ที่นี่ คุณจะเห็นว่าฉันใส่สูตรอย่างถูกต้องในเซลล์ที่เลือก
=VLOOKUP(H4,B4:F12,2)
กดปุ่ม ENTER แต่แทนที่จะแสดง รหัสคำสั่งซื้อ ระบบจะแสดงข้อผิดพลาด #N/A
ตอนนี้ ดูที่ lookup_value คุณจะ เห็นว่าการสะกดของ Apple ไม่ถูกต้อง นั่นคือสาเหตุที่ VLOOKUP ไม่ทำงาน
วิธีแก้ไข :
พิมพ์ lookup_value อย่างระมัดระวังเสมอ คุณต้องคงการสะกดค่าจากตารางข้อมูลให้ถูกต้อง
ขณะที่ฉันพิมพ์ lookup_value ตามที่อยู่ในตาราง ดังนั้น VLOOKUP จึงทำงานได้
1.3. ค่าตัวเลขจัดรูปแบบเป็นข้อความ
ในกรณีที่ค่าตัวเลขจัดรูปแบบเป็นข้อความใน table_array จะแสดงข้อผิดพลาด #N/A ขณะที่ใช้ VLOOKUP ฟังก์ชัน
ฉันจะพยายามหา ราคา โดยใช้ รหัสคำสั่งซื้อ เป็น lookup_value .
ก่อนอื่น เลือกเซลล์เพื่อวางค่าผลลัพธ์ของคุณ
➤ ฉันเลือกเซลล์ I4
จากนั้น พิมพ์สูตรต่อไปนี้ลงใน แถบสูตร .
=VLOOKUP(H4,C4:F12,3)
กดปุ่ม ENTER ดังนั้น คุณจะได้รับข้อผิดพลาด #N/A แทนที่จะเป็น ราคา
ตอนนี้ หากคุณผ่านคอลัมน์ รหัสคำสั่งซื้อ คุณจะเห็นตัวเลข 1001 ถูกจัดรูปแบบเป็นข้อความ นั่นคือเหตุผลที่ไม่ทำงาน VLOOKUP .
วิธีแก้ไข :
เพื่อหลีกเลี่ยงประเภทดังกล่าวของข้อผิดพลาด ให้ตรวจสอบรูปแบบของค่าตัวเลขเสมอ ที่นี่ ฉันแก้ไขรูปแบบตัวเลขเป็นตัวเลขเพื่อให้ VLOOKUP ทำงานได้
อ่านเพิ่มเติม: VLOOKUP บางส่วน ข้อความจากเซลล์เดียวใน Excel
1.4. ค่าการค้นหาไม่ใช่คอลัมน์ซ้ายสุด
ฟังก์ชัน VLOOKUP รักษาลำดับ ซึ่ง lookup_value จะต้องเป็น คอลัมน์ซ้ายสุด ถ้าไม่เช่นนั้นจะไม่ทำงาน
ฉันจะพยายามหา ราคา โดยใช้ รหัสคำสั่งซื้อ เป็น lookup_value
ดังนั้น ฉันใช้สูตรต่อไปนี้
=VLOOKUP(H4,B4:F12,3)
แต่นี่คือ รหัสคำสั่งซื้อ คอลัมน์ไม่ใช่คอลัมน์ซ้ายสุดของ table_array B4:F12 นั่นเป็นเหตุผลว่าทำไมจึงแสดงข้อผิดพลาด #N/A
วิธีแก้ไข :
ที่นี่คุณสามารถหลีกเลี่ยงข้อผิดพลาดได้ 2 วิธี
⏩ วิธีแรกคือคุณสามารถเปลี่ยน table_array โดยที่ lookup_value จะเป็น คอลัมน์ซ้ายสุด
⏩ ประการที่สอง คุณสามารถวางคอลัมน์ lookup_value ที่ตำแหน่งซ้ายสุดของตารางชุดข้อมูล
อ่านเพิ่มเติม: VLOOKUP ที่มีค่าการค้นหาสองค่าใน Excel (2 แนวทาง)
1.5. ตารางขนาดใหญ่หรือการแทรกแถวใหม่ & คอลัมน์ที่มีค่า
บางครั้งเราแทรกข้อมูลใหม่ลงในชุดข้อมูลของเรา แต่ลืมเปลี่ยน table_array ดังนั้น VLOOKUP จึงทำงานไม่ถูกต้อง
ฉันจะพยายามหา รหัสคำสั่งซื้อ โดยใช้ ผลไม้ เป็น lookup_value .
ดังนั้น ฉันจึงใช้สูตรต่อไปนี้
=VLOOKUP(H4,B4:F12,2,FALSE)
ที่นี่ ฉันใช้ประเภท ตรงทั้งหมด เพื่อหลีกเลี่ยงข้อมูลที่ทำให้เข้าใจผิด และใส่ข้อมูลสำหรับ Lichi แต่เกิดข้อผิดพลาดเนื่องจากฉันไม่ได้อัปเดต table_array .
วิธีแก้ไข :
โปรดจำไว้ว่าเมื่อใดก็ตามที่คุณใส่ข้อมูลใหม่ลงในตารางชุดข้อมูลของคุณให้อัปเดต table-array ด้วย
⏩ที่นี่ ฉันอัปเดต table_array ในสูตร
=VLOOKUP(H4,B4:F14,2,FALSE)
⏩ อีกวิธีหนึ่งคือการแปลงชุดข้อมูลของคุณเป็นตาราง
ก่อนอื่น เลือกช่วงเซลล์
จากนั้น เปิด แทรก >> เลือก ตาราง
A กล่องโต้ตอบ จะปรากฏขึ้น
จากนั้น คลิก ตกลง .
เนื่องจากตอนนี้ชุดข้อมูลของคุณกลายเป็นตาราง คุณก็สามารถใช้ชื่อตารางได้
อ่านเพิ่มเติม: เหตุใด VLOOKUP จึงส่งคืน #N/A เมื่อตรงกัน (5 สาเหตุและวิธีแก้ไข)
2. VLOOKUP ไม่ทำงานและแสดงข้อผิดพลาด VALUE
จากส่วนนี้ คุณจะได้ทราบสาเหตุที่ #VALUE ข้อผิดพลาด เกิดขึ้นขณะทำงานกับฟังก์ชัน VLOOKUP นอกจากนี้ ฉันจะแนะนำวิธีแก้ปัญหาที่เป็นไปได้ทั้งหมดเพื่อหลีกเลี่ยงข้อผิดพลาด #VALUE
2.1 สำหรับหมายเลขดัชนีคอลัมน์น้อยกว่า 1
หากคุณใช้ col_index_num น้อยกว่า 1 โดยไม่ตั้งใจ คุณจะได้รับข้อผิดพลาด #VALUE 3>
ในกรณีที่คุณได้รับ #VALUE โปรดตรวจสอบอาร์กิวเมนต์ col_index_num ของคุณ
อ่านเพิ่มเติม: VLOOKUP ด้วยตัวเลขใน Excel (4 ตัวอย่าง)
2.2. การใช้อักขระมากกว่า 255 ตัว
สมมติว่าคุณมีข้อความขนาดยาวเป็นค่าที่มากกว่า 255 อักขระ ดังนั้นคุณจะมีข้อผิดพลาด #VALUE
ที่นี่ ในเซลล์ A7 ฉันใส่ค่าที่เกิน 255 อักขระ
จากนั้นใช้สูตรต่อไปนี้
=VLOOKUP(G4,A4:E12,2)
ตอนนี้ คุณจะเห็นว่าผลลัพธ์แสดงข้อผิดพลาด #VALUE
วิธีแก้ไข :
เพื่อหลีกเลี่ยงข้อผิดพลาดนี้ คุณสามารถลดอักขระหรือคุณสามารถใช้ ดัชนี และ ฟังก์ชัน MATCH แทน VLOOKUP .
ที่นี่ ฉันใช้ฟังก์ชัน MATCH และ INDEX
=INDEX($B$4:$B$12,MATCH(TRUE,INDEX($A$4:$A$12=G4,0),0))
ที่นี่ ในฟังก์ชัน INDEX เลือกการอ้างอิงสัมบูรณ์ของช่วงเซลล์ $B$4:$B$12 จากที่ฉันต้องการคืนค่า
ในฟังก์ชัน MATCH ให้ TRUE เป็น lookup_value และใช้ INDEX อื่น ( $A$4:$A$12=G4,0) ฟังก์ชันเป็น lookup_array จากนั้นใช้ 0 เป็น match_type เพื่อใช้ ตรงทั้งหมด จับคู่ .
กดปุ่ม ENTER และคุณจะได้รับผลลัพธ์สำหรับ lookup_value มากกว่า 255 อักขระ<3
อ่านเพิ่มเติม: INDEX MATCH เทียบกับฟังก์ชัน VLOOKUP (9 ตัวอย่าง)
การอ่านที่คล้ายกัน <2
- เอ็กเซลLOOKUP เทียบกับ VLOOKUP: ด้วย 3 ตัวอย่าง
- วิธีสร้าง VLOOKUP Case Sensitive ใน Excel (4 วิธี)
- Excel VLOOKUP เพื่อหาค่าสุดท้ายใน คอลัมน์ (พร้อมทางเลือก)
- วิธีดำเนินการ VLOOKUP ด้วยสัญลักษณ์แทนใน Excel (2 วิธี)
- Excel VLOOKUP เพื่อส่งคืนค่าหลายค่าในแนวตั้ง
3. VLOOKUP ไม่ทำงานและแสดงข้อผิดพลาด REF
ที่นี่ คุณจะทราบสาเหตุที่ ข้อผิดพลาด #REF เกิดขึ้นขณะทำงาน ด้วยฟังก์ชัน VLOOKUP และคุณจะได้รับวิธีแก้ปัญหาเพื่อหลีกเลี่ยงข้อผิดพลาด #REF
3.1. การใช้จำนวนดัชนีคอลัมน์มากกว่าตาราง
ในกรณีที่คุณใช้ col_index_num มากกว่าจำนวนคอลัมน์ที่คุณมีใน table_array คุณจะได้รับ # REF ข้อผิดพลาด
ที่นี่ ฉันใช้ 6 เป็น col_index_number แต่ table_array มี 5 คอลัมน์ทั้งหมด นั่นคือสาเหตุที่ฟังก์ชัน VLOOKUP ไม่ทำงานและแสดงข้อผิดพลาด #REF
วิธีแก้ไข :
เพื่อหลีกเลี่ยงข้อผิดพลาด #REF ให้ตรวจสอบ col_index_num และใช้ตัวเลขที่อยู่ใน table_array .
อ่านเพิ่มเติม: VLOOKUP เพื่อส่งคืนหลายคอลัมน์ใน Excel (4 ตัวอย่าง)
4. VLOOKUP NAME Error
ให้ฉันแสดงให้คุณเห็นว่าเหตุใดจึงเกิดข้อผิดพลาด #NAME และคุณจะลบออกได้อย่างไร
4.1. สำหรับชื่อฟังก์ชันการสะกดผิด VLOOKUP ไม่ทำงาน
ข้อผิดพลาด #NAME มาจากการสะกดชื่อฟังก์ชันผิด
วิธีแก้ไข :
เพื่อหลีกเลี่ยงข้อผิดพลาด #NAME ให้ใช้เสมอ ชื่อฟังก์ชันที่เหมาะสมจากฟังก์ชันในตัวของ Excel
5. การใช้การจับคู่โดยประมาณ
หากคุณใช้ การจับคู่โดยประมาณ (TRUE) มีความเป็นไปได้ที่ #N/A ข้อผิดพลาดหรือ ไม่ถูกต้อง ผลลัพธ์
ฉันจะพยายามหา รหัสคำสั่งซื้อ โดยใช้ ผลไม้ เป็น lookup_value .
ดังนั้นฉันจึงใช้สูตรต่อไปนี้
=VLOOKUP(H4,B4:F12,2,TRUE)
แต่ที่นี่ ฉันให้ Lichi เป็น lookup_value และใช้ TRUE เป็น range_lookup VLOOKUP แสดง 1007 เป็น รหัสคำสั่งซื้อ ซึ่งไม่ถูกต้อง เนื่องจาก 1007 เป็น รหัสคำสั่งซื้อ ของ Cherry .
เนื่องจากฉันใช้การจับคู่โดยประมาณ ดังนั้นแทนที่จะแสดงข้อผิดพลาดจึงแสดงข้อมูลที่ไม่ถูกต้อง
วิธีแก้ไข :
ใช้ lookup_value อย่างระมัดระวัง แทนที่จะใช้ประเภท การจับคู่โดยประมาณ คุณสามารถใช้ประเภท การจับคู่แบบตรงทั้งหมด ฉันคิดว่าการได้รับข้อผิดพลาดนั้นดีกว่าการมีข้อมูลที่ทำให้เข้าใจผิด
คุณสามารถสรุปสูตรด้วย ฟังก์ชัน IFERROR เพื่อแสดงข้อความแสดงข้อผิดพลาดเมื่อ ไม่สามารถหาค่าภายในช่วงได้
6. การอ้างอิงตารางเป็นแบบสัมพัทธ์
หาก อาร์เรย์ตาราง ของคุณมีการอ้างอิงค่อนข้างมาก แสดงว่าคุณ อาจมีการแจ้งเตือนข้อผิดพลาดหรือข้อผิดพลาดขณะคัดลอกสูตรไปยัง ค้นหา อื่นๆค่า
วิธีแก้ไข :
เพื่อหลีกเลี่ยงข้อผิดพลาดนี้ ให้ใช้การอ้างอิงแบบสัมบูรณ์
กดปุ่ม ปุ่ม F4 ในขณะที่เลือกการอ้างอิง มันจะแปลง การอ้างอิงแบบสัมพัทธ์ เป็น การอ้างอิงแบบสัมบูรณ์
ที่นี่ ฉันใช้สูตรต่อไปนี้
<9 =VLOOKUP(I4,C4:$F$12,2)
7. VLOOKUP ไม่ทำงาน สำหรับการแทรกคอลัมน์ใหม่
หากคุณแทรกคอลัมน์ใหม่ในชุดข้อมูลที่มีอยู่ ฟังก์ชัน VLOOKUP จะไม่ทำงาน col_index-num ใช้เพื่อส่งคืนข้อมูลเกี่ยวกับเรกคอร์ดในฟังก์ชัน VLOOKUP col_index-num ไม่คงทน ดังนั้นหากคุณใส่อันใหม่ VLOOKUP จะไม่ทำงาน
ที่นี่ คุณสามารถดู VLOOKUP ฟังก์ชันทำงานอย่างถูกต้อง
แต่ที่นี่ฉันได้แทรกคอลัมน์ใหม่หนึ่งคอลัมน์ นั่นคือเหตุผลว่าทำไมจึงแสดง 0 แทนที่จะแสดงผลลัพธ์ที่คาดไว้
วิธีแก้ไข :
⏩ เพื่อหลีกเลี่ยงปัญหาประเภทนี้ คุณสามารถป้องกันเวิร์กชีตเพื่อไม่ให้ใครก็ตามแทรกคอลัมน์ใหม่ได้ แต่ยังไม่เป็นมิตรพอ
⏩ อีกวิธีหนึ่งคือคุณสามารถใช้ฟังก์ชัน MATCH ภายในฟังก์ชัน VLOOKUP
ดังนั้น พิมพ์ข้อความต่อไปนี้ สูตร
=VLOOKUP(I4,B4:G12,MATCH(J3,B3:G3,0),FALSE)
ที่นี่ ใน ฟังก์ชัน VLOOKUP ฉันเลือกเซลล์ I4 เป็น lookup_value จากนั้นเลือกช่วง B4:G12 เป็น table_array และเป็น col_index_num ใช้แล้ว