Найти элементы в одном столбце, которые не находятся в другом столбце


Ответы:


91
  1. Выберите список в столбце A
  2. Щелкните правой кнопкой мыши и выберите Name a Range ...
  3. Введите "ColumnToSearch"
  4. Нажмите ячейку C1
  5. Введите эту формулу: =MATCH(B1,ColumnToSearch,0)
  6. Перетащите формулу вниз для всех элементов в B

Если формуле не удается найти соответствие, она будет помечена # N / A, в противном случае это будет число.

Если вы хотите, чтобы оно было ИСТИНА для совпадения и ЛОЖЬ для отсутствия совпадения, используйте следующую формулу:

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

Если вы хотите вернуть необнаруженное значение и вернуть пустую строку для найденных значений

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

6
Затем ... Поместите эту формулу в условное форматирование в обоих списках и используйте ее, чтобы выделить (или что-то еще) несовпадающие ячейки
Kije

4
«Назови диапазон» не появляется для меня? Протестировано в Excel 2010 и 2016.
KERR

Если, как и @KERR и я, у вас нет «Назови диапазон ...», просто используйте A:Aили используйте вместо ColumnToSearchформул в формулах.
Майкл,

Если, как и я, вы сначала не понимаете, где вводить «ColumnToSearch» (шаг 3), введите его в качестве имени именованного диапазона, который вы создаете.
DaveL17

«Назовите диапазон» выглядит как Define Name...(Excel 2019)
Оливер-Клэр

29

Вот быстрый и грязный метод.

Выделите столбец B и откройте условное форматирование .

Выбор Используйте формулу, чтобы определить, какие ячейки выделить .

Введите следующую формулу, а затем установите предпочитаемый формат.

=countif(A:A,B1)=0

Я использовал «= ISODD (COUNTIF (A: A, B1) = 0)», чтобы напечатать true для «1» или false для «0»
Рамрай

15

Выберите два столбца. Перейдите к условному форматированию и выберите «Выделить правила ячеек». Выберите Дублировать значения. Когда вы переходите к следующему шагу, вы можете изменить его на уникальные значения. Я просто сделал это, и это сработало для меня.


если у вас есть значение в столбце B, повторное, это не будет выделять их
magodiez

1
Наверняка это самый простой и актуальный ответ? Никаких формул не требуется.
KERR

Ничего не происходит при этом.
Сверхразум

12

Взял меня навсегда, чтобы понять это, но это очень просто. Предполагая, что данные начинаются с A2 и B2 (для заголовков), введите эту формулу в C2:

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

Затем нажмите и перетащите вниз.

Ячейка с #N/Aозначает, что значение непосредственно рядом с ней в столбце B не отображается нигде во всем столбце A.

Обратите внимание, что вам необходимо изменить $ 287 $, чтобы он соответствовал всему вашему поисковому массиву в столбце A. Например, если ваши данные в столбце A уменьшаются на 1000 записей, это должно быть $ A $ 1000.


3
=MATCH(B2,$A:$A,0)работал на меня.
Нильгун

4

Смотрите мой ответ по формуле массива на листинг А, не найденный в Б здесь:

= ЕСЛИОШИБКА (ИНДЕКС ($ A $ 2: $ A $ 1999, MATCH (0, ЕСЛИОШИБКА (ПОИСКПОЗ ($ A $ 2: $ A $ 1999, $ B $ 2: $ B $ 399,0), СЧЕТЕСЛИ ($ C $ 1: $ С1, $ A $ 2: $ A $ 1999)), 0)), "")

Сравнение двух столбцов имен и возвращение пропущенных имен


Это хорошее решение, но оно зависит от сортировки исходных столбцов в алфавитном порядке, или же оно извлекает дубликаты.
Стив Тейлор

3

Моими требованиями было не выделять, а показывать все значения, кроме дубликатов в двух столбцах. Я воспользовался решением @ 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. Это самый простой способ.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.