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

Вы когда-нибудь сталкивались с ситуацией, когда нужно сравнить два огромных списка в Excel и найти общие элементы? Например, выгрузили базу клиентов за два разных периода и хотите понять, кто из них покупал повторно. Или получили два прайс-листа от поставщиков и нужно выявить совпадающие товары. Вручную проверять тысячи строк — неблагодарное занятие, а стандартный поиск по Ctrl+F не спасает, когда данных слишком много.

К счастью, в Excel есть как минимум пять эффективных способов наложить один список на другой и автоматически выделить совпадения. Некоторые из них требуют знания формул, другие работают через встроенные инструменты без единой функции. В этой статье мы разберём каждый метод — от простейшего условного форматирования до продвинутых инструментов вроде Power Query, — а также покажем, какой способ выбрать в зависимости от объёма данных и ваших задач.

Важно: все примеры в статье актуальны для Excel 2016–2023 и Microsoft 365. Если вы работаете в более старой версии (например, Excel 2010), некоторые функции могут отсутствовать — об этом мы предупредим отдельно.

1. Способ: Условное форматирование для визуального сравнения

Самый быстрый и наглядный метод, если вам нужно просто пометить повторяющиеся значения без дополнительных вычислений. Подходит для списков до 10–15 тысяч строк (в более объёмных таблицах Excel может подтормаживать).

Алгоритм действий:

  • 📌 Выделите первый список (например, столбец A с данными).
  • 🎨 Перейдите на вкладку Главная → Условное форматирование → Создать правило.
  • 🔍 Выберите тип правила Использовать формулу для определения форматируемых ячеек.
  • 📝 В поле формулы введите:
    =СЧЁТЕСЛИ($B:$B; A1)>0

    (где $B:$B — второй список, а A1 — первая ячейка первого списка).

  • 🎨 Нажмите Формат, выберите цвет заливки (например, жёлтый) и сохраните правило.

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

=СЧЁТЕСЛИ($A:$A; B1)>0

Преимущества метода:

  • ⚡ Мгновенный результат без дополнительных столбцов.
  • 👁️ Визуально понятно, где совпадения.
  • 🔄 Легко обновляется при изменении данных.
⚠️ Внимание: Если в списках есть повторяющиеся значения внутри одного столбца (например, один и тот же клиент встречается несколько раз в первом списке), они тоже будут подсвечены. Чтобы этого избежать, используйте формулу с учётом уникальности:
=И(СЧЁТЕСЛИ($A:$A; A1)=1; СЧЁТЕСЛИ($B:$B; A1)>0)

2. Способ: Функция СЧЁТЕСЛИ для вывода результатов в отдельный столбец

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

Инструкция:

  1. Добавьте справа от первого списка (например, в столбец C) заголовок Совпадения.
  2. В ячейку C2 введите формулу:
    =ЕСЛИ(СЧЁТЕСЛИ($B:$B; $A2)>0; "Есть"; "")

    и растяните её на весь столбец.

  3. Теперь в столбце C будет отметка Есть напротив всех строк из первого списка, которые встречаются во втором.

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

=ЕСЛИОШИБКА(ИНДЕКС($A$2:$A$100; ПОИСКПОЗ(0; СЧЁТЕСЛИ($C$1:C1; $A$2:$A$100)+ЕСЛИ(СЧЁТЕСЛИ($B:$B; $A$2:$A$100)=0; 1; 0); 0)); "")

Введите её в ячейку, где хотите получить список совпадений, и подтвердите нажатием Ctrl+Shift+Enter (в новых версиях Excel достаточно просто Enter).

Удалите пустые строки в обоих списках|Проверьте регистр (Excel различает "Иванов" и "иванов")|Убедитесь, что в ячейках нет скрытых пробелов (используйте СЖПРОБЕЛЫ)|Преобразуйте текст в одинаковый формат (например, через ПРОПИСН или СТРОЧН)

-->

Формула Что делает Пример результата
=СЧЁТЕСЛИ($B:$B; A2) Считает, сколько раз значение из A2 встречается в столбце B 3 (если "Иванов" встречается 3 раза во втором списке)
=ЕСЛИ(СЧЁТЕСЛИ($B:$B; A2)>0; "Да"; "Нет") Проверяет наличие совпадения и выводит "Да"/"Нет" Да
=СЧЁТЕСЛИМН($B:$B; A2; $B:$B; "<>"&"") Считает совпадения, игнорируя пустые ячейки во втором списке 2

3. Способ: Функция ВПР для извлечения данных из второго списка

Если вам нужно не просто найти совпадения, а перенести дополнительную информацию из второго списка в первый (например, цены, статусы или даты), используйте функцию ВПР (или её современный аналог XLOOKUP в Excel 365).

Пример задачи: у вас есть список клиентов в столбце A и их заказы в столбце B. Во втором списке (столбцы D:E) — те же клиенты, но с указанием их бонусных баллов. Вам нужно добавить баллы в первый список.

Решение:

  • 📍 В ячейку C2 (рядом с первым списком) введите:
    =ВПР($A2; $D:$E; 2; ЛОЖЬ)

    где:

    • $A2 — искомое значение (клиент из первого списка),
    • $D:$E — диапазон второго списка (столбец D — клиенты, E — баллы),
    • 2 — номер столбца в диапазоне, откуда брать данные (баллы),
    • ЛОЖЬ — точное совпадение.
  • 🔄 Растяните формулу на весь столбец.

Если клиент из первого списка есть во втором, в столбце C появятся его баллы. Если нет — ошибка #Н/Д. Чтобы заменить ошибки на пустоту, оберните формулу в ЕСЛИОШИБКА:

=ЕСЛИОШИБКА(ВПР($A2; $D:$E; 2; ЛОЖЬ); "")
Чем XLOOKUP лучше ВПР?

XLOOKUP (доступна с Excel 2019 и Microsoft 365) решает основные проблемы ВПР:

  • 🔍 Ищет не только влево, но и вправо от искомого столбца.
  • 📊 Возвращает диапазон ячеек, а не только одно значение.
  • 🚫 Не требует указания номера столбца — достаточно указать диапазон с данными.
  • 🔄 По умолчанию ищет точное совпадение (не нужно прописывать ЛОЖЬ).

Пример использования: =XLOOKUP(A2; D:D; E:E; "")

⚠️ Внимание: Функция ВПР чувствительна к формату данных. Если в одном списке клиент записан как Иванов И.И., а в другом как Иванов И. И. (с двумя пробелами), совпадение не найдётся. Используйте СЖПРОБЕЛЫ для очистки данных перед поиском.

4. Способ: Сводные таблицы для анализа пересечений

Если вам нужно не только найти совпадения, но и проанализировать их распределение (например, посчитать, сколько раз повторяются те или иные значения), сводные таблицы — идеальный инструмент. Они позволяют:

  • 📊 Группировать данные по категориям,
  • 🔢 Считать количество совпадений,
  • 📈 Строить графики на основе пересечений.

Пошаговая инструкция:

  1. 📋 Объедините оба списка в одну таблицу. Например, скопируйте второй список (B2:B100) и вставьте его под первым (A101:A200). Добавьте заголовок Источник и укажите для первого списка значение Список 1, для второго — Список 2.
  2. 🖥️ Выделите весь диапазон (например, A1:C200) и создайте сводную таблицу: Вставка → Сводная таблица.
  3. 📊 В настройках сводной таблицы:
    • Перетащите поле с данными (например, Клиенты) в область Строки.
    • Перетащите поле Источник в область Значения (по умолчанию посчитается количество записей).
  • 🔍 Отфильтруйте сводную таблицу по значению 2 в столбце Количество по Источник — это и будут повторяющиеся элементы.
  • Преимущество метода: вы получаете не только список совпадений, но и статистику — сколько раз каждый элемент встречается в каждом из списков. Это полезно для анализа, например, повторных покупок или пересечений ассортимента.

    Условное форматирование|Функция СЧЁТЕСЛИ|ВПР / XLOOKUP|Сводные таблицы|Power Query|Другой способ-->

    5. Способ: Power Query для обработки больших объёмов данных

    Если ваши списки содержат десятки тысяч строк или требуется регулярно обновлять данные, Power Query (вкладка Данные → Получить данные) станет вашим спасением. Этот инструмент позволяет:

    • 🔄 Объединять списки без формул,
    • 🧹 Очищать данные от дубликатов и ошибок,
    • 🔄 Автоматически обновлять результаты при изменении исходных данных.

    Алгоритм работы:

    1. 📂 Импортируйте оба списка в Power Query:
      • Выделите первый список → Данные → Из таблицы/диапазона.
      • Повторите для второго списка.
  • 🔗 Объедините запросы:
    • В панели Запросы выберите первый запрос → Объединить запросы → Объединить.
    • Выберите тип объединения Внутреннее (оставит только совпадающие строки).
    • Укажите столбцы для сопоставления (например, Клиент в обоих списках).
    • 📤 Загрузите результат в Excel: Главная → Закрыть и загрузить.
    • Критическое преимущество Power Query: обработка миллионов строк без зависаний, тогда как формулы в ячейках могут сильно тормозить. Кроме того, вы можете сохранить запрос и обновлять данные одним кликом, не повторяя все действия заново.

      ⚠️ Внимание: При объединении списков в Power Query регистр имеет значение. Если в одном списке "Иванов", а в другом "иванов", они не будут считаться совпадением. Чтобы этого избежать, добавьте шаг преобразования текста в один регистр:
      1. Выделите столбец с данными.
      2. Перейдите на вкладку ПреобразованиеФормат → СТРОЧНЫЕ (или ПРОПИСНЫЕ).

    6. Способ: Формулы массива для продвинутых пользователей

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

    Пример: вывести все уникальные значения, которые есть и в первом, и во втором списке.

    =УНИК(ФИЛЬТР($A$2:$A$100; СЧЁТЕСЛИ($B$2:$B$100; $A$2:$A$100)>0))

    Где:

    • $A$2:$A$100 — первый список,
    • $B$2:$B$100 — второй список.

    Для вывода всех совпадений с дубликатами (если одно значение встречается несколько раз в обоих списках), используйте:

    =ФИЛЬТР($A$2:$A$100; СЧЁТЕСЛИ($B$2:$B$100; $A$2:$A$100)>0)

    Эти формулы работают только в Excel 365 и Excel 2021. Для более старых версий используйте альтернативу с ИНДЕКС и ПОИСКПОЗ (см. пример в разделе про СЧЁТЕСЛИ).

    Сравнение методов: какой выбрать?

    Метод Сложность Макс. объём данных Когда использовать
    Условное форматирование До 15 000 строк Нужно быстро визуально отметить совпадения
    СЧЁТЕСЛИ + дополнительный столбец ⭐⭐ До 50 000 строк Нужно фильтровать или копировать совпадения
    ВПР / XLOOKUP ⭐⭐ До 100 000 строк Нужно перенести данные из второго списка в первый
    Сводные таблицы ⭐⭐⭐ До 1 000 000 строк Нужна статистика по совпадениям (количество, распределение)
    Power Query ⭐⭐⭐⭐ Неограниченно Большие объёмы данных, регулярные обновления
    Формулы массива ⭐⭐⭐⭐⭐ До 100 000 строк Нужны динамические списки совпадений без дополнительных столбцов

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

    FAQ: Частые вопросы о поиске совпадений в Excel

    ❓ Как найти совпадения, если списки в разных файлах?

    Используйте формулы с указанием пути к другому файлу. Например:

    =СЧЁТЕСЛИ([Book2.xlsx]Лист1!$A:$A; A2)

    Или импортируйте оба списка в один файл через Данные → Получить данные → Из файла.

    ❓ Почему ВПР не находит совпадения, хотя они есть?

    Причины:

    • 🔍 Разный регистр (например, "Иванов" vs "иванов"). Решение: используйте СТРОЧН или ПРОПИСН.
    • 📏 Лишние пробелы. Решение: примените СЖПРОБЕЛЫ.
    • 📊 Разный формат ячеек (текст vs число). Решение: преобразуйте оба столбца в один формат.
    ❓ Можно ли найти совпадения по нескольким столбцам одновременно?

    Да. Создайте дополнительный столбец в каждом списке, где объедините значения через разделитель. Например:

    =A2 & "|" & B2

    Затем ищите совпадения по этому столбцу любым из описанных методов.

    ❓ Как автоматически обновлять список совпадений при изменении данных?

    Используйте:

    • 🔄 Power Query (обновление по кнопке Данные → Обновить все),
    • 📊 Сводные таблицы (обновляются при изменении исходных данных),
    • 📝 Формулы (обновляются автоматически, но могут тормозить на больших объёмах).
    ❓ Есть ли разница между СЧЁТЕСЛИ и СЧЁТЕСЛИМН?

    СЧЁТЕСЛИ ищет по одному критерию, а СЧЁТЕСЛИМН — по нескольким. Например, чтобы посчитать, сколько раз клиент "Иванов" покупал товар "Ноутбук", используйте:

    =СЧЁТЕСЛИМН($A:$A; "Иванов"; $B:$B; "Ноутбук")