ค้นหารายการในคอลัมน์หนึ่งที่ไม่ได้อยู่ในอีกคอลัมน์


90

ฉันมีสองคอลัมน์ใน Excel และฉันต้องการค้นหา (เน้นที่เด่นกว่า) รายการที่อยู่ในคอลัมน์ B แต่ไม่อยู่ในคอลัมน์ A

วิธีที่เร็วที่สุดในการทำเช่นนี้คืออะไร?

คำตอบ:


91
  1. เลือกรายการในคอลัมน์ A
  2. คลิกขวาและเลือกตั้งชื่อช่วง ...
  3. ป้อน "ColumnToSearch"
  4. คลิกเซลล์ C1
  5. ใส่สูตรนี้: =MATCH(B1,ColumnToSearch,0)
  6. ลากสูตรลงสำหรับรายการทั้งหมดใน B

หากสูตรล้มเหลวในการค้นหาคู่ที่ตรงกันจะมีการทำเครื่องหมาย # N / A ไม่เช่นนั้นจะเป็นตัวเลข

หากคุณต้องการให้มันเป็น TRUE สำหรับการจับคู่และ FALSE สำหรับไม่ตรงกันให้ใช้สูตรนี้แทน:

=ISNUMBER(MATCH(B1,ColumnToSearch,0))

หากคุณต้องการส่งคืนค่า unfoundและส่งคืนสตริงว่างสำหรับค่าที่พบ

=IF(ISNUMBER(MATCH(B1,ColumnToSearch,0)),"",B1)

6
จากนั้น ... ใส่สูตรนี้ลงในรูปแบบตามเงื่อนไขในทั้งสองรายการและใช้มันเพื่อเน้น (หรืออะไรก็ตาม) เซลล์ที่ไม่ใช่การจับคู่
Kije

4
"ตั้งชื่อช่วง" ไม่ปรากฏสำหรับฉัน ทดสอบใน Excel 2010 และ 2016
KERR

หากเช่น @KERR และ I คุณไม่มี "ตั้งชื่อช่วง ... " เพียงแค่ใช้A:Aหรือช่วงของคุณแทนColumnToSearchสูตร
Michael

หากเช่นฉันคุณไม่ทราบว่าในตอนแรกที่จะป้อน "ColumnToSearch" (ขั้นตอนที่ 3) ให้ป้อนเป็นชื่อของช่วงที่ตั้งชื่อที่คุณกำลังสร้าง
DaveL17

"ชื่อช่วง" ปรากฏเป็นDefine Name...(Excel 2019)
oliver-clare

29

นี่เป็นวิธีที่รวดเร็วและสกปรก

ไฮไลต์คอลัมน์Bและเปิดรูปแบบตามเงื่อนไข

เลือกใช้สูตรในการกำหนดที่เซลล์ที่จะเน้น

ป้อนสูตรต่อไปนี้จากนั้นตั้งค่ารูปแบบที่คุณต้องการ

=countif(A:A,B1)=0

ฉันใช้ "= ISODD (COUNTIF (A: A, B1) = 0)" เพื่อพิมพ์จริงสำหรับ '1' หรือเท็จสำหรับ '0'
Ramraj

15

เลือกสองคอลัมน์ ไปที่การจัดรูปแบบตามเงื่อนไขและเลือกเน้นกฎของเซลล์ เลือกค่าซ้ำ เมื่อคุณไปยังขั้นตอนถัดไปคุณสามารถเปลี่ยนเป็นค่าที่ไม่ซ้ำกันได้ ฉันแค่ทำมันและมันก็ใช้ได้ผลสำหรับฉัน


หากคุณมีค่าในคอลัมน์ B ซ้ำนี่จะไม่เน้นพวกเขา
magodiez

1
แน่นอนว่านี่เป็นคำตอบที่ง่ายและเกี่ยวข้องมากที่สุด? ไม่จำเป็นต้องใช้สูตร
KERR

ไม่มีอะไรเกิดขึ้นเมื่อทำสิ่งนี้
Overmind

12

เอาฉันตลอดไปคิดออก แต่มันง่ายมาก ข้อมูลที่สมมติว่าเริ่มต้นใน A2 และ B2 (สำหรับส่วนหัว) ให้ป้อนสูตรนี้ใน C2:

=MATCH(B2,$A$2:$A$287,0)

จากนั้นคลิกและลากลง

เซลล์#N/Aที่มีค่าเฉลี่ยที่อยู่ติดกับเซลล์นั้นในคอลัมน์ B จะไม่ปรากฏที่ใดก็ได้ในทั้งคอลัมน์ A

โปรดทราบว่าคุณต้องเปลี่ยน $ A $ 287 เพื่อให้ตรงกับอาร์เรย์การค้นหาทั้งหมดของคุณในคอลัมน์ A ตัวอย่างเช่นหากข้อมูลของคุณในคอลัมน์ A ลดลง 1,000 รายการรายการนั้นควรเป็น $ A $ 1,000


3
=MATCH(B2,$A:$A,0)ทำงานให้ฉัน
nilgun

4

ดูคำตอบสูตรอาร์เรย์ของฉันสำหรับรายการไม่พบใน B ที่นี่:

= IFERROR (INDEX ($ A $ 2: $ A $ 1999 MATCH (0, IFERROR (MATCH ($ A $ 2: $ A $ 1,999, $ B $ 2: $ B $ 399,0) COUNTIF ($ C $ 1: $ C1, $ A $ 2: $ A $ 1999)), 0)), "")

การเปรียบเทียบชื่อคอลัมน์สองคอลัมน์และส่งคืนชื่อที่หายไป


โซลูชันนี้ดี แต่ขึ้นอยู่กับคอลัมน์ต้นฉบับที่เรียงลำดับตามตัวอักษรหรืออื่น ๆ ที่ดึงข้อมูลซ้ำ
Steve Taylor

3

ความต้องการของฉันไม่ใช่เพื่อเน้น แต่เพื่อแสดงค่าทั้งหมดยกเว้นที่ซ้ำกันระหว่าง 2 คอลัมน์ ฉันใช้ความช่วยเหลือของโซลูชัน @ brenton และปรับปรุงเพิ่มเติมเพื่อแสดงค่าเพื่อให้ฉันสามารถใช้ข้อมูลโดยตรง:

=IF(ISNA(MATCH(B2,$A$2:$A$2642,0)), A2, "")

คัดลอกสิ่งนี้ในเซลล์แรกของคอลัมน์ที่ 3 และใช้สูตรไปทั่วคอลัมน์เพื่อที่จะแสดงรายการทั้งหมดจากคอลัมน์ B ที่ไม่มีอยู่ในคอลัมน์ A


มีข้อผิดพลาดในสูตรด้านบน = IF (ISNA (MATCH (B2, $ A $ 2: $ A $ 2642,0)), A2, "" ") ควรเป็น = IF (ISNA (MATCH (B2, $ A $ 2: $) A $ 2642,0)) B2, "")

1

ขอบคุณผู้ที่แบ่งปันคำตอบของพวกเขา ด้วยวิธีการแก้ปัญหาของคุณฉันสามารถทำให้ตัวเองเป็นของตัวเอง

ในรุ่นของคำถามนี้ฉันมีสองคอลัมน์เพื่อเปรียบเทียบ - ระดับบัณฑิตศึกษาเต็มรูปแบบ (Col A) และส่วนย่อยของระดับบัณฑิตศึกษา (Col B) ฉันต้องการที่จะสามารถเน้นในชั้นเรียนจบการศึกษาเต็มรูปแบบสำหรับนักเรียนที่เป็นสมาชิกของชุดย่อย

ฉันใส่สูตรต่อไปนี้ลงในคอลัมน์ที่สาม:

=if(A2=LOOKUP(A2,$B$2:$B$91),1100,0)

นักเรียนของฉันส่วนใหญ่ใช้รหัสนี้แม้ว่าจะได้รับข้อผิดพลาดบางอย่างในข้อมูลแถวแรก ๆ


-3

ในการเขียนC1 =if(A1=B1 , 0, 1)จากนั้นในConditional formattingเลือกหรือData bars Color scalesมันเป็นวิธีที่ง่ายที่สุด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.