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


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

Тема сравнения двух списков поднималась уже неоднократно и с разных сторон, но остается одной из самых актуальных везде и всегда. Давайте рассмотрим один из ее аспектов — подсчет количества и вывод совпадающих значений в двух списках. Предположим, что у нас есть два диапазона данных, которые мы хотим сравнить:
Для удобства, можно дать им имена, чтобы потом использовать их в формулах и ссылках. Для этого нужно выделить ячейки с элементами списка и на вкладке Формулы нажать кнопку Менеджер Имен — Создать (Formulas — Name Manager — Create) . Также можно превратить таблицы в «умные» с помощью сочетания клавиш Ctrl + T или кнопки Форматировать как таблицу на вкладке Главная (Home — Format as Table) .
Подсчет количества совпадений
Для подсчета количества совпадений в двух списках можно использовать следующую элегантную формулу:
В английской версии это будет =SUMPRODUCT(COUNTIF(Список1;Список2)) Давайте разберем ее поподробнее, ибо в ней скрыто пару неочевидных фишек. Во-первых, функция СЧЁТЕСЛИ (COUNTIF) . Обычно она подсчитывает количество искомых значений в диапазоне ячеек и используется в следующей конфигурации: =СЧЁТЕСЛИ( Где_искать ; Что_искать ) Обычно первый аргумент — это диапазон, а второй — ячейка, значение или условие (одно!), совпадения с которым мы ищем в диапазоне. В нашей же формуле второй аргумент — тоже диапазон. На практике это означает, что мы заставляем Excel перебирать по очереди все ячейки из второго списка и подсчитывать количество вхождений каждого из них в первый список. По сути, это равносильно целому столбцу дополнительных вычислений, свернутому в одну формулу:
Во-вторых, функция СУММПРОИЗВ (SUMPRODUCT) здесь выполняет две функции — суммирует вычисленные СЧЁТЕСЛИ совпадения и заодно превращает нашу формулу в формулу массива без необходимости нажимать сочетание клавиш Ctrl + Shift + Enter . Формула массива необходима, чтобы функция СЧЁТЕСЛИ в режиме с двумя аргументами-диапазонами корректно отработала свою задачу.
Вывод списка совпадений формулой массива

Если нужно не просто подсчитать количество совпадений, но и вывести совпадающие элементы отдельным списком, то потребуется не самая простая формула массива:
В английской версии это будет, соответственно: =INDEX(Список1;MATCH(1;COUNTIF(Список2;Список1)*NOT(COUNTIF($E$1:E1;Список1));0)) Логика работы этой формулы следующая:
- фрагмент СЧЁТЕСЛИ(Список2;Список1), как и в примере до этого, ищет совпадения элементов из первого списка во втором
- фрагмент НЕ(СЧЁТЕСЛИ($E$1:E1;Список1)) проверяет, не найдено ли уже текущее совпадение выше
- и, наконец, связка функций ИНДЕКС и ПОИСКПОЗ извлекает совпадающий элемент
Не забудьте в конце ввода этой формулы нажать сочетание клавиш Ctrl + Shift + Enter , т.к. она должна быть введена как формула массива.
Возникающие на избыточных ячейках ошибки #Н/Д можно дополнительно перехватить и заменить на пробелы или пустые строки «» с помощью функции ЕСЛИОШИБКА (IFERROR) .
Вывод списка совпадений с помощью слияния запросов Power Query
На больших таблицах формула массива из предыдущего способа может весьма ощутимо тормозить, поэтому гораздо удобнее будет использовать Power Query. Это бесплатная надстройка от Microsoft, способная загружать в Excel 2010-2013 и трансформировать практически любые данные. Мощь и возможности Power Query так велики, что Microsoft включила все ее функции по умолчанию в Excel начиная с 2016 версии.
Для начала, нам необходимо загрузить наши таблицы в Power Query. Для этого выделим первый список и на вкладке Данные (в Excel 2016) или на вкладке Power Query (если она была установлена как отдельная надстройка в Excel 2010-2013) жмем кнопку Из таблицы/диапазона (From Table) :
Excel превратит нашу таблицу в «умную» и даст ей типовое имя Таблица1. После чего данные попадут в редактор запросов Power Query. Никаких преобразований с таблицей нам делать не нужно, поэтому можно смело жать в левом верхнем углу кнопку Закрыть и загрузить — Закрыть и загрузить в. (Close & Load To. ) и выбрать в появившемся окне Только создать подключение (Create only connection) :

Затем повторяем то же самое со вторым диапазоном.
И, наконец, переходим с выявлению совпадений. Для этого на вкладке Данные или на вкладке Power Query находим команду Получить данные — Объединить запросы — Объединить (Get Data — Merge Queries — Merge) :
В открывшемся окне делаем три вещи:
- выбираем наши таблицы из выпадающих списков
- выделяем столбцы, по которым идет сравнение
- выбираем Тип соединения = Внутреннее (Inner Join)
После нажатия на ОК на экране останутся только совпадающие строки:
Ненужный столбец Таблица2 можно правой кнопкой мыши удалить, а заголовок первого столбца переименовать во что-то более понятное (например Совпадения). А затем выгрузить полученную таблицу на лист, используя всё ту же команду Закрыть и загрузить (Close & Load) :
Если значения в исходных таблицах в будущем будут изменяться, то необходимо не забыть обновить результирующий список совпадений правой кнопкой мыши или сочетанием клавиш Ctrl + Alt + F5 .
Макрос для вывода списка совпадений
Само-собой, для решения задачи поиска совпадений можно воспользоваться и макросом. Для этого нажмите кнопку Visual Basic на вкладке Разработчик (Developer) . Если ее не видно, то отобразить ее можно через Файл — Параметры — Настройка ленты (File — Options — Customize Ribbon) .
В окне редактора Visual Basic нужно добавить новый пустой модуль через меню Insert — Module и затем скопировать туда код нашего макроса:
Sub Find_Matches_In_Two_Lists() Dim coll As New Collection Dim rng1 As Range, rng2 As Range, rngOut As Range Dim i As Long, j As Long, k As Long Set rng1 = Selection.Areas(1) Set rng2 = Selection.Areas(2) Set rngOut = Application.InputBox(Prompt:="Выделите ячейку, начиная с которой нужно вывести совпадения", Type:=8) 'загружаем первый диапазон в коллекцию For i = 1 To rng1.Cells.Count coll.Add rng1.Cells(i), CStr(rng1.Cells(i)) Next i 'проверяем вхождение элементов второго диапазона в коллекцию k = 0 On Error Resume Next For j = 1 To rng2.Cells.Count Err.Clear elem = coll.Item(CStr(rng2.Cells(j))) If CLng(Err.Number) = 0 Then 'если найдено совпадение, то выводим со сдвигом вниз rngOut.Offset(k, 0) = rng2.Cells(j) k = k + 1 End If Next j End Sub
Воспользоваться добавленным макросом очень просто. Выделите, удерживая клавишу Ctrl , оба диапазона и запустите макрос кнопкой Макросы на вкладке Разработчик (Developer) или сочетанием клавиш Alt + F8 . Макрос попросит указать ячейку, начиная с которой нужно вывести список совпадений и после нажатия на ОК сделает всю работу:
Более совершенный макрос подобного типа есть, кстати, в моей надстройке PLEX для Microsoft Excel.
Ссылки по теме
- Поиск различий в двух списках Excel
- Слияние двух списков без дубликатов (3 способа)
- Что такое макросы, как их использовать, куда копировать код макросов на Visual Basic
Как в экселе найти совпадения

Проверка на совпадение

В EXCEL существует несколько вариантов сравнения содержимого ячеек, от проверки на равенство чисел до совпадения текста.
Именно о проверке текста мы и поговорим.
Если необходимо сравнить две ячейки с текстом, не обращая внимания на различие строчных или прописных букв, то можно воспользоваться выражением «=ячейка1=ячейка2» ,
результатом которого будет либо ИСТИНА либо ЛОЖЬ , если значения не совпадут.


Если необходимо сделать проверку на точное совпадение, то поможет функция СОВПАД .
Для того, чтобы сравнить две ячейки необходимо:
- Выбрать первую ячейку в которой будем получать результаты сравнения, ввести =СОВПАД и нажать fx.
- В открывшемся окне настроить аргументы, где в первой ячейке указать первое сравниваемое значение, во второй –второе соответственно.

Если материал Вам понравился или даже пригодился, Вы можете поблагодарить автора, переведя определенную сумму по кнопке ниже:
Сравнение столбцов в Excel на совпадения в строках

Иногда у пользователей Microsoft Excel возникает необходимость сравнить данные в столбцах и найти строки с одинаковыми или разными значениями. Это может быть нужно для ряда целей, включая получение данных об одинаковых событиях или поиск совпадений по продажам. В этом материале вы получите информацию о том, как быстро сравнить два столбца на совпадения по строкам без использования вспомогательных ячеек и дополнительных формул. Совпадения можно будет выделить, чтобы отличить их от уникальных значений. Это поможет быстрее проанализировать большую выборку данных.
Отмечу, что в рамках материала будут разобраны инструменты именно для сравнения значений в двух разных столбцах. Если вас интересуют дубликаты в рамках одной таблицы и их дальнейшее удаление, то эта операция имеет другой алгоритм действий, о котором я уже писал в тематической статье по ссылке ниже:
Читайте также в Комьюнити: Как удалить дубликаты в Microsoft Excel
Вариант 1: Инструмент выделения группы ячеек
Эксель предоставляет своим пользователям разнообразный список небольших, но полезных функций. Сюда можно отнести выделение ячеек по группам. В отдельном окне появляются настройки этого выделения, среди которых можно выбрать пустые ячейки, разные области, формулы или отличия. Как раз последний тип нас и интересует, поэтому давайте более детально остановимся на использовании инструмента.
- Для начала выделите все содержимое двух столбцов для сравнения без заголовков. Значения в ячейках могут быть как текстовыми, так и числовыми или даже смешанными.

- После выделения используйте сочетание клавиш Ctrl + G для вызова меню настройки выделения.

- В следующем окне нажмите по кнопке «Выделить» для открытия необходимых параметров.

- Далее понадобится отметить маркером пункт «Отличия по строкам», после чего нажать «ОК», чтобы сохранить это выделение.

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

- Поэтому вызовите настройку заливки и выберите любой удобный для вас цвет, чтобы залить уникальные ячейки конкретным цветом.

- Теперь уникальные значения в столбце справа будут выделены отдельным цветом, а одинаковые – без заливки. Этого вполне достаточно для того, чтобы найти совпадения и решить, что с ними делать в дальнейшем.

Это довольно простой и понятный метод поиска совпадений, требующий исключительно применения настройки для выделения. Однако сработает он всего раз, и чтобы в дальнейшем снова повторить поиск, понадобится выполнить одни и те же действия повторно для всей области данных. Если такой вариант вам кажется долгим, то ознакомьтесь со следующим, который подразумевает другой подход к выполнению данной задачи.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Вариант 2: Условное форматирование
При помощи условного форматирования в Excel можно добиться удобного и быстрого изменения таблицы в соответствии с заданными условиями. При этом создаваемые правила будут работать всегда, даже в тех случаях, когда таблица расширяется или какие-то значения из нее удаляются, меняются. Для поиска совпадений в строках двух столбцов условное форматирование тоже подходит, но для настройки понадобится выполнить ряд шагов, которые и будут описаны в следующей инструкции.
- Если вы еще не отформатировали ваш диапазон данных как таблицу, рекомендую сделать это сейчас, поскольку так вы значительно упростите дальнейшую работу с условным форматированием.

- После этого достаточно будет выделить всего одну ячейку из вашей таблицы, затем развернуть настройку «Условное форматирование» и выбрать действие «Создать правило».

- В списке с выбором типа правила вас интересует «Использовать формулу для определения форматирования ячеек». Сейчас нужно просто выделить это правило, кликнув по нему левой кнопкой мыши.

- В качестве формулы для форматирования используйте =$A2=$B2, где A2 и B2 – первые строки в вашей таблице для сравнения.

- Теперь условное форматирование уже работает корректно, но пока не применяет никаких внешних изменений к ячейкам. Для исправления этой ситуации нажмите по кнопке «Формат».

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

- Сейчас условное форматирование еще не работает, поскольку не был задан диапазон для проверки. Выделите всю таблицу, снова откройте «Условное форматирование» и выберите «Управление правилами».

- В строке «Применяется к» укажите весь диапазон ваших двух столбцов и примените изменения.

- Если что, то вы можете как выделить его вручную, так и написать в виде диапазона по номерам ячеек.

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

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