На прочтение этой статьи у вас уйдет около 10 минут, а в следующие 5 минут (или даже быстрее) вы легко сравните два столбца Excel на наличие дубликатов и выделите найденные совпадения либо уникальные значения. Ладно, обратный отсчет начался!

Мы все время от времени делаем сравнение данных в Excel. Microsoft Excel предлагает ряд опций для сравнения и сопоставления данных, но большинство из них ориентированы на поиск в одной колонке. Встроенный инструмент удаления дубликатов, доступный в Excel 2016, 2013 и 2010, не может справиться с этой задачей, поскольку он не может сравнивать данные между двумя столбиками. Кроме того, он может только удалять дубликаты. Других возможностей — таких как выделение или раскраска,  увы, нет :-(.

В этом руководстве мы рассмотрим несколько методов сравнения двух столбцов в Excel и нахождения совпадений и различий между ними.

Как сравнить 2 столбца в Excel по строкам.

Когда вы выполняете анализ данных в Excel, одной из наиболее частых задач является сравнение данных нескольких колонок в каждой отдельной их строке. Эту задачу можно выполнить с помощью функции ЕСЛИ , как показано в следующих примерах.

1. Проверяем совпадения или различия в одной строке.

Чтобы выполнить такое построчное сравнение, используйте популярную функцию ЕСЛИ, которая сравнивает первые две ячейки каждого из них. Введите её в какой-либо другой столбик той же строки, а затем скопируйте ее вниз, перетащив маркер заполнения (маленький квадрат в правом нижнем углу). При этом курсор изменится на знак плюса:

Чтобы найти в соответствующей строке позиции с одинаковым содержимым, A2 и B2 в этом примере, запишите:

=ЕСЛИ(A2=B2; "Совпадает"; "")

Чтобы найти позиции в одной строке с разным содержимым, просто замените "=" знаком неравенства:

=ЕСЛИ(A2<>B2; "НЕ совпадает";””)

И, конечно же, ничто не мешает найти совпадения и различия с помощью одной формулы:

=ЕСЛИ(A2=B2; "Совпадает"; "НЕ совпадает")

Результат может выглядеть примерно так:

Как видите, одинаково хорошо обрабатываются числа, даты, время и текст.

2. Сравниваем построчно с учетом регистра.

Как вы, наверное, заметили, формулы из предыдущего примера игнорируют регистр при сравнении текстовых значений, как в строке 10 на скриншоте выше. Если вы хотите найти совпадения с учетом регистра, используйте функцию СОВПАД (EXACT в английской версии):

=ЕСЛИ(СОВПАД(A2; B2); "Одинаковый"; "")

Чтобы найти различия с учетом регистра в одной строке, введите соответствующий текст («Уникальный» например) в третий аргумент функции ЕСЛИ:

=ЕСЛИ(СОВПАД(A2; B2); "Одинаковый"; "Уникальный")

Сравните несколько столбцов построчно

Мы можем ставить перед собой следующие цели:

  • Найти строки с одинаковыми значениями во всех из них.
  • Найти строки с одинаковыми значениями в любых двух.

Пример 1. Найдите полное совпадение по одной строке.

Если в вашей таблице три или более колонки, и вы хотите найти строки с одинаковыми записями во всех из них, функция ЕСЛИ с оператором И подойдет для вас:

=ЕСЛИ(И(A2=B2; A2=C2); "Полное совпадение"; "")

Если в вашей таблице очень много колонок, более элегантным решением будет использование функции СЧЁТЕСЛИ :

=ЕСЛИ(СЧЁТЕСЛИ($A2:$C2; $A2)=3; "Полное совпадение"; "")

где 3 - количество сравниваемых колонок.

Или можно использовать —

=ЕСЛИ(СЧЁТЕСЛИ($A2:$C2; $A2)=СЧЁТЗ(A2:C2); "Полное совпадение"; "")

Пример 2. Найдите хотя бы 2 совпадения в данных.

Если вы ищете способ сравнить данные на предмет наличия любых двух или более ячеек с одинаковыми значениями в одной строке, используйте функцию ЕСЛИ с оператором ИЛИ:

=ЕСЛИ(ИЛИ(A2=B2; B2=C2; A2=C2); "Найдены одинаковые"; "")

Если есть много данных для сравнения, ваша конструкция с оператором ИЛИ может стать слишком громоздкой. В этом случае лучшим решением было бы добавить несколько функций СЧЁТЕСЛИ. Первый СЧЁТЕСЛИ подсчитывает, сколько раз текущее значение из первой колонки встречается во всех данных, находящихся правее него, второй СЧЁТЕСЛИ определяет то же самое для значения из второй колонки, и так далее. Если счетчик равен 0, возвращается надпись «Все уникальные», в противном случае - «Найдены одинаковые». Например:

=ЕСЛИ(СЧЁТЕСЛИ(B2:D2;A2)+СЧЁТЕСЛИ(C2:D2;B2)+(C2=D2)=0;"Все уникальные";"Найдены одинаковые")

Могу предложить также более компактный вариант выявления совпадений — формула массива:

{=ЕСЛИ(СУММ(СЧЁТЕСЛИ(A2:D2;A2:D2))>4;"Совпадения";"")}

или

{=ЕСЛИ(СУММ(СЧЁТЕСЛИ(A2:D2;A2:D2))>СЧЁТЗ(A2:D2);"Совпадения";"")}

Попробуйте — получите тот же результат. Также не забудьте нажать Ctrl + Shift + Enter, чтобы ввести всё правильно.

Как сравнить два столбца в Excel на совпадения и различия?

Предположим, у вас есть 2 списка данных в Excel, и вы хотите найти все значения (числа, даты или текстовые записи), которые находятся в колонке A, но их нет в B. То есть, исходные данные из А мы сравниваем с В.

Для этого вы можете встроить функцию СЧЁТЕСЛИ($B:$B;$A2)=0 в логический тест ЕСЛИ и проверить, возвращает ли она ноль (совпадение не найдено) или любое другое число (найдено хотя бы 1 совпадение).

Например, следующая формула ЕСЛИ/СЧЁТЕСЛИ выполняет поиск значения из A2 по всему столбцу B. Если совпадений не найдено, возвращается «Нет совпадений в B», в противном случае - пустую строку:

=ЕСЛИ(СЧЁТЕСЛИ($B:$B; $A2)=0; "Нет совпадений в В"; "")

Тот же результат может быть достигнут при использовании функции ЕСЛИ всесте с ЕОШИБКА и ПОИСКПОЗ:

=ЕСЛИ(ЕОШИБКА(ПОИСКПОЗ($A2;$B$2:$B$10;0));"Уникальное"; " Найдено в B")

Или, используя следующую формулу массива (не забудьте нажать Ctrl + Shift + Enter, чтобы ввести ее правильно):

=ЕСЛИ(СУММ(--($B$2:$B$10=$A2))=0; "";" Найдено в B")

Если вы хотите, чтобы одно выражение определяло как дубликаты, так и уникальные значения, поместите текст совпадений в пустые двойные кавычки («») в любой из приведенных выше формул. Например:

=ЕСЛИ(СЧЁТЕСЛИ($B:$B; $A2)=0; "Уникальное"; "Дубликат")

Думаю, вы понимаете, что точно таким же образом можно наоборот сравнивать В с А.

Как сравнить два списка в Excel и извлечь совпадающие данные?

Иногда вам может потребоваться не только сопоставить две колонки в двух разных таблицах, но и извлечь соответствующие записи из второй таблицы. В Microsoft Excel предусмотрена специальная функция для этих целей - функция ВПР

Кроме того, в отдельной статье мы подробно рассмотрели 4 способа, как сравнить таблицы при помощи формулы ВПР.

В качестве альтернативы вы можете использовать более мощную и универсальную комбинацию ИНДЕКС и ПОИСКПОЗ.

Например, следующее выражение сравнивает названия продуктов в колонках D и A, и если совпадение найдено, соответствующая цифра продаж извлекается из B. Если совпадения не найдено, возвращается ошибка #Н/Д.

=ИНДЕКС($B$2:$B$6;ПОИСКПОЗ($D2;$A$2:$A$6;0))

Сообщение об ошибке в таблице выглядит не слишком красиво. Поэтому обработаем это выражение при помощи ЕОШИБКА:

=ЕСЛИОШИБКА(ИНДЕКС($B$2:$B$6;ПОИСКПОЗ($D2;$A$2:$A$6;0));"")

Теперь мы видим либо число, либо пустое значение. Никаких ошибок.

Как выделить совпадения и различия в 2 столбцах.

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

1. Выделите совпадения и различия построчно.

Чтобы сравнить два столбца в Excel и выделить те позиции в первом, которые имеют идентичные записи во втором по той же строке, выполните следующие действия:

  • Выберите область, в которой вы хотите выделить.
  • Щелкните Условное форматирование> Новое правило…> Используйте формулу.
  • Создайте правило с простой формулой, например =$B2=$A2 (при условии, что строка 2 является первой строкой с данными, не включая заголовок таблицы). Пожалуйста, дважды проверьте, что вы используете относительную ссылку на строку (без знака $), как записано выше.

Чтобы выделить различия между колонками A и B, создайте правило с формулой =$B2<>$A2

Если вы новичок в условном форматировании Excel, смотрите пошаговые инструкции в статье Как закрасить строку или столбец по условию.

2. Выделите уникальные записи в каждом столбце.

Когда вы сравниваете два списка в Excel, вы можете выделить 3 типа элементов:

  • Предметы только в первом списке (уникальные)
  • Предметы только во втором списке (уникальные)
  • Элементы, которые есть в обоих списках (дубликаты).

О выделении дубликатов — смотрите пример выше. А сейчас рассмотрим, как выделить неповторяющиеся элементы в каждом из списков.

Предположим, что ваш список 1 находится в колонке A (A2:A8), а список 2 - в колонке C (C2:C8). Вы создаете правила условного форматирования с помощью следующих формул:

Выделите уникальные значения в списке 1 (столбик A): =СЧЁТЕСЛИ($A$2:$A$8;C$2)=0

Выделите уникальные значения в списке 2 (столбик C): =СЧЁТЕСЛИ($C$2:$C$8;$A2)=0

И получите следующий результат:

3. Выделите дубликаты в 2 столбцах.

Если вы внимательно следовали предыдущему примеру, у вас не возникнет трудностей с настройкой СЧЁТЕСЛИ, чтобы она находила совпадения, а не различия. Все, что вам нужно сделать, это установить счетчик больше нуля:

Вновь используем условное форматирование при помощи формулы.

Выделите совпадения в списке 1 (столбик A): =СЧЁТЕСЛИ($A$2:$A$8;C$2)>0

Выделите совпадения в списке 2 (столбик C): =СЧЁТЕСЛИ($C$2:$C$8;$A2)>0

Выделите цветом различия и совпадения в нескольких столбцах

При сравнении значений в нескольких наборах данных построчно, самый быстрый способ выделить одинаковые — создать правило условного форматирования. А самый быстрый способ скрыть различия — воспользоваться инструментом «Выделить группу ячеек», как показано в следующих примерах.

1. Как выделить совпадения.

Чтобы выделить строки, которые имеют одинаковые значения по всей длине, создайте правило условного форматирования на основе одного из следующих выражений:

=И($A2=$B2; $A2=$C2)

или

=СЧЁТЕСЛИ($A2:$C2; $A2)=3

Где A2, B2 и C2 - самые верхние в вашем диапазоне, а 3 - количество колонок для сравнения.

Конечно, можно не ограничиваться сравнением только 3 колонок. Вы можете использовать аналогичные формулы для выделения строк с одинаковыми значениями в 4, 5, 6 или более столбиках.

И еще один способ выделения цветом повторяющихся значений в нескольких столбцах. Снова используем условное форматирование. Выделяем нужную область, затем на ленте в меню условного форматирования выбираем Правила выделения ячеек — Повторяющиеся значения. Определяем желаемое оформление, получаем картину подобную той, что вы видите ниже.

Кстати, на последнем этапе вы можете выбрать не повторяющиеся, а уникальные значения. Способ, конечно, незамысловатый, но, возможно, он вам будет полезен.

2. Как выделить различия.

Чтобы быстро выделить позиции с разными значениями в каждой отдельной строке, вы можете использовать функцию Excel «Выделить группу ячеек».

  1. Выберите диапазон ячеек, который вы хотите сравнить. В этом примере я выбрал диапазон от A2 до C10.

По умолчанию самая верхняя координата выбранного диапазона является активной ячейкой, и все значения в той же строке будут сравниваться с нею. Она при выделении области имеет белый цвет, а все остальные ячейки выбранного диапазона выделены серым. В этом примере активной является A2, поэтому столбец сравнения - A.

Чтобы изменить столбец сравнения, используйте клавишу TAB для перемещения по диапазону слева направо или клавишу Enter для перемещения сверху вниз. Если нужно перемещаться снизу вверх, то нажмите и удерживайте SHIFT, и вновь используйте ТАВ — будете двигаться не вниз, а вверх. Вы увидите, как ваше белое пятно перемещается, и соответственно изменяется активный столбец.

  1. На вкладке «Главная» нажмите «Найти и выделить» > « Выделить группу ячеек». Затем выберите «Отличия по строкам» и нажмите «ОК» .
  1. Позиции, значения которых отличаются от ячеек сравнения в каждой строке, выделяются. Если вы хотите закрасить выделенные ячейки каким-либо цветом, просто щелкните значок «Цвет заливки» на ленте и выберите нужный цвет.

Как сравнить два значения в отдельных столбцах.

Фактически, сравнение двух ячеек — частный случай сравнения двух колонок в Excel построчно, за исключением того, что вам не нужно копировать формулы.

Например, для сравнения ячеек A1 и C1 можно использовать:

Для совпадений:    =ЕСЛИ(A1=C1; "Совпадает"; "")

Для различий:  =ЕСЛИ(A1<>C1; "Уникальные"; "")

Чтобы узнать о некоторых других способах сравнения ячеек в Excel, см. Как сравнивать значения в ячейках Excel .

Для более эффективного анализа данных вам могут потребоваться более сложные формулы, и вы можете найти несколько хороших идей в следующих руководствах:

Вот какими способами вы можете сравнить столбцы в Excel на наличие дубликатов и уникальных значений. 

Если у вас есть вопросы или что-то осталось неясным, напишите мне комментарий, и я с радостью уточню это подробнее. Спасибо за чтение!

8 способов сравнить две таблицы в Excel и найти разницу - В этом руководстве вы познакомитесь с различными методами сравнения таблиц Excel и определения различий между ними. Узнайте, как просматривать две таблицы рядом, как использовать формулы для создания отчета о различиях, выделить…
Сравнение ячеек в Excel - Вы узнаете, как сравнивать значения в ячейках Excel на предмет точного совпадения или без учета регистра. Мы предложим вам несколько формул для сопоставления двух ячеек по их значениям, длине или количеству…
Вычисление номера столбца для извлечения данных в ВПР - Задача: Наиболее простым способом научиться указывать тот столбец, из которого функция ВПР будет извлекать данные. При этом мы не будем изменять саму формулу, поскольку это может привести в случайным ошибкам.…
Формула ВПР в Excel для сравнения двух таблиц - 4 способа - Сравнение таблиц – это задача, которую в Excel приходится довольно часто решать. Например, у нас есть старый прайс-лист и его новая версия. Нужно просмотреть, цены на какие товары изменились и…
проверка правильности ввода Excel при помощи функции ЕСЛИ Как проверить правильность ввода данных в Excel? - Подтверждаем правильность ввода галочкой. Задача: При ручном вводе данных в ячейки таблицы проверять правильность ввода в соответствии с имеющимся списком допустимых значений. В случае правильного ввода в отдельном столбце ставить…
ЕСЛИ + СОВПАД текст Функция ЕСЛИ: проверяем условия с текстом - Рассмотрим использование функции ЕСЛИ в Excel в том случае, если в ячейке находится текст. СодержаниеПроверяем условие для полного совпадения текста.ЕСЛИ + СОВПАДИспользование функции ЕСЛИ с частичным совпадением текста.ЕСЛИ + ПОИСКЕСЛИ…
функция если Визуализация данных при помощи функции ЕСЛИ - Функцию ЕСЛИ можно использовать для вставки в таблицу символов, которые наглядно показывают происходящие с данными изменения. К примеру, мы хотим показать в отдельной колонке таблицы, происходит рост или снижение продаж.…
ЕСЛИ с датами 3 примера, как функция ЕСЛИ работает с датами. - На первый взгляд может показаться, что функцию ЕСЛИ для работы с датами можно применять так же, как для числовых и текстовых значений, которые мы только что обсудили. К сожалению, это…
Функция ЕСЛИ в Excel – примеры использования - на примерах рассмотрим, как можно использовать функцию ЕСЛИ в Excel, а также какие задачи мы можем решить с ее помощью