สารบัญ
บทช่วยสอนแสดงวิธีใช้สูตร VLOOKUP ใน Excel เพื่อเปรียบเทียบสองคอลัมน์เพื่อส่งกลับค่าทั่วไป (ตรงกัน) หรือค้นหาข้อมูลที่ขาดหายไป (ผลต่าง)
เมื่อคุณมีข้อมูลในสองคอลัมน์ รายการที่ต่างกัน คุณอาจต้องเปรียบเทียบเพื่อดูว่าข้อมูลใดขาดหายไปในรายการใดรายการหนึ่ง หรือมีข้อมูลใดบ้างในทั้งสองรายการ การเปรียบเทียบทำได้หลายวิธี วิธีที่จะใช้ขึ้นอยู่กับสิ่งที่คุณต้องการ
วิธีเปรียบเทียบสองคอลัมน์ใน Excel โดยใช้ VLOOKUP
เมื่อ คุณมีข้อมูลสองคอลัมน์และต้องการทราบว่าจุดข้อมูลใดจากรายการหนึ่งที่มีอยู่ในอีกรายการหนึ่ง คุณสามารถใช้ฟังก์ชัน VLOOKUP เพื่อเปรียบเทียบรายการสำหรับค่าทั่วไป
ในการสร้างสูตร VLOOKUP ในคอลัมน์นั้น รูปแบบพื้นฐาน นี่คือสิ่งที่คุณต้องทำ:
- สำหรับ lookup_value (อาร์กิวเมนต์ที่ 1) ให้ใช้เซลล์บนสุดจากรายการ 1
- สำหรับ table_array (อาร์กิวเมนต์ที่ 2) ระบุทั้งรายการ 2
- สำหรับ col_index_num (อาร์กิวเมนต์ที่ 3) ให้ใช้ 1 เนื่องจากมีเพียงหนึ่งคอลัมน์ในอาร์เรย์
- สำหรับ range_lookup (อาร์กิวเมนต์ที่ 4) ให้ตั้งค่าเป็น FALSE - ตรงกันทั้งหมด
สมมติว่าคุณมีชื่อผู้เข้าร่วมในคอลัมน์ A (รายการที่ 1) และชื่อเหล่านั้น ที่ผ่านรอบคัดเลือกในคอลัมน์ ข (รายการที่ 2) คุณต้องการเปรียบเทียบ 2 รายชื่อนี้เพื่อพิจารณาว่าผู้เข้าร่วมกลุ่ม A คนใดมาถึงกิจกรรมหลักแล้ว เมื่อต้องการทำเช่นนี้ ใช้สิ่งต่อไปนี้สูตร
=VLOOKUP(A2, $C$2:$C$9, 1, FALSE)
สูตรไปที่เซลล์ E2 แล้วลากลงมาตามเซลล์ที่มีรายการในรายการ 1
โปรดสังเกตว่า table_array ถูกล็อคด้วยการอ้างอิงแบบสัมบูรณ์ ($C$2:$C$9) เพื่อให้คงที่เมื่อคุณคัดลอกสูตรไปยังเซลล์ด้านล่าง
อย่างที่คุณเห็น ชื่อของ นักกีฬาที่ผ่านการรับรองจะแสดงในคอลัมน์ E สำหรับผู้เข้าร่วมที่เหลือ ข้อผิดพลาด #N/A ปรากฏขึ้นเพื่อระบุว่าชื่อของพวกเขาไม่มีอยู่ในรายการที่ 2
ปลอมตัว #N/ ข้อผิดพลาด
สูตร VLOOKUP ที่กล่าวถึงข้างต้นตอบสนองวัตถุประสงค์หลักได้อย่างสมบูรณ์ - ส่งกลับค่าทั่วไปและระบุจุดข้อมูลที่ขาดหายไป อย่างไรก็ตาม มีข้อผิดพลาด #N/A จำนวนมาก ซึ่งอาจทำให้ผู้ใช้ที่ไม่มีประสบการณ์สับสน ทำให้พวกเขาคิดว่ามีบางอย่างผิดปกติกับสูตร
หากต้องการแทนที่ข้อผิดพลาดด้วย เซลล์ว่าง ให้ใช้ VLOOKUP ร่วมกับฟังก์ชัน IFNA หรือ IFERROR ด้วยวิธีนี้:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")
สูตรที่ปรับปรุงแล้วของเราจะส่งกลับสตริงว่าง ("") แทน #N/ ก. คุณยังสามารถส่งคืน ข้อความที่กำหนดเอง เช่น "ไม่อยู่ในรายการ 2", "ไม่มีอยู่" หรือ "ไม่พร้อมใช้งาน" ตัวอย่างเช่น:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "Not in List 2")
นั่นคือสูตร VLOOKUP พื้นฐานสำหรับเปรียบเทียบสองคอลัมน์ใน Excel ขึ้นอยู่กับงานเฉพาะของคุณ คุณสามารถแก้ไขได้ตามที่แสดงในตัวอย่างเพิ่มเติม
เปรียบเทียบสองคอลัมน์ในแผ่นงาน Excel ที่ต่างกันโดยใช้ VLOOKUP
ในชีวิตจริง คอลัมน์ที่คุณต้องเปรียบเทียบไม่ได้อยู่ในแผ่นเดียวกันเสมอไป ในชุดข้อมูลขนาดเล็ก คุณสามารถลองระบุความแตกต่างด้วยตนเองได้โดยการดูแผ่นงานสองแผ่นเคียงข้างกัน
หากต้องการค้นหาในแผ่นงานหรือสมุดงานอื่นที่มีสูตร คุณต้องใช้การอ้างอิงภายนอก วิธีปฏิบัติที่ดีที่สุดคือเริ่มพิมพ์สูตรในแผ่นงานหลักของคุณ จากนั้นสลับไปยังแผ่นงานอื่นและเลือกรายการโดยใช้เมาส์ - การอ้างอิงช่วงที่เหมาะสมจะถูกเพิ่มลงในสูตรโดยอัตโนมัติ
สมมติว่ารายการ 1 คือ ในคอลัมน์ A ใน Sheet1 และรายการ 2 อยู่ในคอลัมน์ A ใน Sheet2 คุณสามารถเปรียบเทียบสองคอลัมน์และค้นหารายการที่ตรงกันโดยใช้สูตรนี้:
=IFNA(VLOOKUP(A2, Sheet2!$A$2:$A$9, 1, FALSE), "")
สำหรับข้อมูลเพิ่มเติม โปรดดู:
- VLOOKUP จากแผ่นงานอื่น
- VLOOKUP จากสมุดงานอื่น
เปรียบเทียบสองคอลัมน์และส่งกลับค่าทั่วไป (ตรงกัน)
ในตัวอย่างก่อนหน้านี้ เราได้พูดถึงสูตร VLOOKUP ในรูปแบบที่ง่ายที่สุด:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")
ผลลัพธ์ของสูตรนั้นคือ รายการค่าที่มีอยู่ในทั้งคอลัมน์และเซลล์ว่างแทนที่ค่าที่ไม่มีในคอลัมน์ที่สอง
หากต้องการรับรายการค่าทั่วไปที่ไม่มีช่องว่าง เพียงเพิ่มตัวกรองอัตโนมัติในคอลัมน์ผลลัพธ์และ กรองช่องว่างออก
ใน Excel สำหรับ Microsoft 365 และ Excel 2021 ที่ รองรับอาร์เรย์แบบไดนามิก คุณสามารถใช้ฟังก์ชัน FILTER เพื่อกรองช่องว่างแบบไดนามิกได้ สำหรับสิ่งนี้ ให้ใช้สูตร IFNA VLOOKUP เป็นเกณฑ์สำหรับ FILTER:
=FILTER(A2:A14, IFNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE), "")"")
โปรดทราบว่าในกรณีนี้ เราใส่ทั้งรายการ 1 (A2:A14) ให้กับอาร์กิวเมนต์ lookup_value ของ VLOOKUP ฟังก์ชันจะเปรียบเทียบค่าการค้นหาแต่ละค่ากับรายการที่ 2 (C2:C9) และส่งกลับอาร์เรย์ที่ตรงกันและข้อผิดพลาด #N/A ที่แสดงค่าที่ขาดหายไป ฟังก์ชัน IFNA จะแทนที่ข้อผิดพลาดด้วยสตริงว่างและให้บริการผลลัพธ์ไปยังฟังก์ชัน FILTER ซึ่งจะกรองช่องว่าง ("") ออกและส่งออกอาร์เรย์ของข้อมูลที่ตรงกันเป็นผลลัพธ์สุดท้าย
หรืออีกวิธีหนึ่ง คุณสามารถใช้ฟังก์ชัน ISNA เพื่อตรวจสอบผลลัพธ์ของ VLOOKUP และกรองรายการที่ประเมินเป็น FALSE เช่น ค่าอื่นที่ไม่ใช่ข้อผิดพลาด #N/A:
=FILTER(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE))=FALSE)
ผลลัพธ์เดียวกันสามารถ ทำได้ด้วยฟังก์ชัน XLOOKUP ซึ่งทำให้สูตรง่ายยิ่งขึ้น เนื่องจากความสามารถของ XLOOKUP ในการจัดการข้อผิดพลาด #N/A ภายใน (ตัวเลือก if_not_found อาร์กิวเมนต์) เราสามารถทำได้โดยไม่ต้องใช้ IFNA หรือ ISNA wrapper:
=FILTER(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")"")
เปรียบเทียบ สองคอลัมน์และค้นหาค่าที่ขาดหายไป (ความแตกต่าง)
หากต้องการเปรียบเทียบ 2 คอลัมน์ใน Excel เพื่อหาความแตกต่าง คุณสามารถดำเนินการดังนี้:
- เขียนสูตรหลักเพื่อค้นหาคอลัมน์แรก ค่าจากรายการ 1 (A2) ในรายการ 2 ($C$2:$C$9):
VLOOKUP(A2, $C$2:$C$9, 1, FALSE)
- ซ้อน สูตรข้างต้นในฟังก์ชัน ISNA เพื่อตรวจสอบผลลัพธ์ของ VLOOKUP เพื่อหาข้อผิดพลาด #N/A ในกรณีที่เกิดข้อผิดพลาด ISNA ให้ผลลัพธ์เป็น TRUE มิฉะนั้นจะเป็น FALSE:
ISNA(VLOOKUP(A2,$C$2:$C$9, 1, FALSE))
- ใช้สูตร ISNA VLOOKUP สำหรับการทดสอบตรรกะของฟังก์ชัน IF หากการทดสอบประเมินค่าเป็น TRUE (ข้อผิดพลาด #N/A) ให้ส่งคืนค่าจากรายการ 1 ในแถวเดียวกัน หากการทดสอบประเมินเป็น FALSE (พบรายการที่ตรงกันในรายการที่ 2) ให้ส่งคืนสตริงว่าง
สูตรที่สมบูรณ์จะอยู่ในรูปแบบนี้:
=IF(ISNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE)), A2, "")
หากต้องการกำจัดช่องว่าง ให้ใช้ตัวกรองของ Excel ตามที่แสดงในตัวอย่างข้างต้น
ใน Excel 365 และ Excel 2021 คุณสามารถกรองรายการผลลัพธ์แบบไดนามิกได้ สำหรับสิ่งนี้ เพียงวางสูตร ISNA VLOOKUP ในอาร์กิวเมนต์ include ของฟังก์ชัน FILTER:
=FILTER(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE)))
อีกวิธีหนึ่งคือ ใช้ XLOOKUP สำหรับเกณฑ์ - ฟังก์ชันส่งคืนสตริงว่าง ("") สำหรับจุดข้อมูลที่ขาดหายไป และคุณกรองค่าในรายการ 1 ที่ XLOOKUP ส่งกลับสตริงว่าง (=""):
=FILTER(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")="")
สูตร VLOOKUP เพื่อระบุการจับคู่และความแตกต่างระหว่างสองคอลัมน์
หากคุณต้องการเพิ่มป้ายข้อความในรายการแรกเพื่อระบุว่าค่าใดมีอยู่ในรายการที่สองและไม่มี ให้ใช้สูตร VLOOKUP ร่วมกับ ฟังก์ชัน IF และ ISNA/ISERROR
ตัวอย่างเช่น ในการระบุชื่อที่อยู่ในทั้งคอลัมน์ A และ D และชื่อที่อยู่ในคอลัมน์ A เท่านั้น สูตรคือ:
=IF(ISNA(VLOOKUP(A2, $D$2:$D$9, 1, FALSE)), "Not qualified", "Qualified")
ในที่นี้ ฟังก์ชัน ISNA จะจับข้อผิดพลาด #N/A ที่สร้างโดย VLOOKUP และส่งผลลัพธ์ระหว่างกลางนั้นไปยังฟังก์ชัน IF เพื่อให้ส่งคืนข้อความที่ระบุสำหรับข้อผิดพลาดและข้อความอื่นสำหรับการค้นหาที่สำเร็จ
ในตัวอย่างนี้ เราใช้ป้ายกำกับ "ไม่ผ่านเกณฑ์"/"ผ่านเกณฑ์" ซึ่งเหมาะสำหรับชุดข้อมูลตัวอย่างของเรา คุณสามารถแทนที่ด้วย "ไม่อยู่ในรายการ 2"/"ในรายการ 2", "ไม่มี"/"มี" หรือป้ายกำกับอื่นๆ ที่คุณเห็นว่าเหมาะสม
สูตรนี้เหมาะที่สุดที่จะแทรกในคอลัมน์ ที่อยู่ติดกับรายการ 1 และคัดลอกผ่านเซลล์ได้มากเท่าที่มีรายการในรายการของคุณ
อีกวิธีหนึ่งในการระบุรายการที่ตรงกันและความแตกต่างใน 2 คอลัมน์คือการใช้ฟังก์ชัน MATCH:
=IF(ISNA(MATCH(A2, $D$2:$D$9, 0)), "Not in List 2", "In List 2")
เปรียบเทียบ 2 คอลัมน์และส่งคืนค่าจากคอลัมน์ที่สาม
เมื่อทำงานกับตารางที่มีข้อมูลที่เกี่ยวข้องกัน บางครั้งคุณอาจต้อง เปรียบเทียบสองคอลัมน์ในสองตารางที่แตกต่างกันและส่งคืนค่าที่ตรงกันจากอีกคอลัมน์หนึ่ง ในความเป็นจริง ฟังก์ชัน VLOOKUP เป็นการใช้งานหลัก ซึ่งออกแบบมาเพื่อจุดประสงค์นี้
ตัวอย่างเช่น เพื่อเปรียบเทียบชื่อในคอลัมน์ A และ D ในสองตารางด้านล่าง และส่งคืนเวลาจากคอลัมน์ E สูตรคือ:
=VLOOKUP(A3, $D$3:$E$10, 2, FALSE)
หากต้องการซ่อนข้อผิดพลาด #N/A ให้ใช้วิธีแก้ปัญหาที่พิสูจน์แล้ว - ฟังก์ชัน IFNA:
=IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "")
แทนที่จะเว้นว่าง คุณสามารถส่งคืนข้อความใดๆ ที่คุณต้องการสำหรับจุดข้อมูลที่ขาดหายไป - เพียงพิมพ์ลงในอาร์กิวเมนต์สุดท้าย ตัวอย่างเช่น:
=IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "Not available")
นอกจาก VLOOKUP แล้ว งานยังสามารถเติมเต็มได้ด้วยฟังก์ชันการค้นหาอื่นๆ อีกสองสามอย่าง
โดยส่วนตัวแล้ว ฉันต้องการใช้ INDEX ที่ยืดหยุ่นกว่าสูตร MATCH:
=IFNA(INDEX($E$3:$E$10, MATCH(A3, $D$3:$D$10, 0)), "")
หรือใช้ตัวสืบทอดรุ่นใหม่ของ VLOOKUP - ฟังก์ชัน XLOOKUP ที่มีอยู่ใน Excel 365 และ Excel 2021:
=XLOOKUP(A3, $D$3:$D$10, $E$3:$E$10, "")
ถึง รับชื่อผู้เข้าร่วมที่มีคุณสมบัติจากกลุ่ม A และผลลัพธ์ เพียงกรองเซลล์ว่างในคอลัมน์ B:
=FILTER(A3:B15, B3:B15"")
เครื่องมือเปรียบเทียบ
หากคุณทำการเปรียบเทียบไฟล์หรือข้อมูลใน Excel บ่อยๆ เครื่องมืออัจฉริยะเหล่านี้ที่รวมอยู่ใน Ultimate Suite จะช่วยประหยัดเวลาของคุณได้อย่างมาก!
เปรียบเทียบตาราง - วิธีที่รวดเร็วในการค้นหารายการที่ซ้ำกัน (ตรงกัน) และค่าที่ไม่ซ้ำ (ผลต่าง) ในชุดข้อมูลสองชุด เช่น คอลัมน์ รายการ หรือตาราง
เปรียบเทียบสองชีต - ค้นหาและเน้นความแตกต่างระหว่างสองเวิร์กชีต
เปรียบเทียบหลายชีต - ค้นหาและเน้นความแตกต่างในหลายชีตพร้อมกัน .
สมุดงานฝึกหัดสำหรับการดาวน์โหลด
VLOOKUP ใน Excel เพื่อเปรียบเทียบคอลัมน์ - ตัวอย่าง (ไฟล์ .xlsx)