Как сравнить две таблицы Excel и найти различия

Практическая сверка двух таблиц: что добавилось, исчезло и изменилось.

Как сравнить две таблицы Excel и найти различия

Короткий ответ: Сравнение таблиц лучше строить не по номеру строки, а по стабильному ключу: ID, номеру договора или артикулу. После этого можно отдельно определить новые, удалённые и изменённые записи.

Как сравнить две таблицы Excel и найти различия

Что получится

Итоговая таблица покажет статус каждой записи: «Без изменений», «Изменено», «Новая» или «Удалена».

Как сравнить две таблицы Excel и найти различия

Исходные данные

Версия 1:

IDСтатусСумма
101В работе10000
102Закрыт15000
103В работе8000

Версия 2:

IDСтатусСумма
101Закрыт10000
103В работе9000
104Новый5000
Исходные данные для: Как сравнить две таблицы Excel и найти различия

Способ 1

В новой версии подтяните старый статус:

=ПРОСМОТРX(A2;Версия1!A:A;Версия1!B:B;"Новая")

Старую сумму:

=ПРОСМОТРX(A2;Версия1!A:A;Версия1!C:C;"")

Затем:

=ЕСЛИ(D2="Новая";"Новая";ЕСЛИ(И(B2=D2;C2=E2);"Без изменений";"Изменено"))

Удалённые строки ищутся обратной проверкой: ID из первой версии ищется во второй.

Способ 2

Для регулярных сверок загрузите обе таблицы в Power Query, выполните слияние по ID, раскройте поля старой версии и сравните значения. Отдельными фильтрами можно получить новые и удалённые записи.

Автоматизация

Если колонок десятки, имеет смысл формировать отдельный отчёт различий. Для типовой повторяемой сверки сначала лучше Power Query, а не VBA.

Типичные ошибки

  • Нет уникального ключа.
  • Сравнивают только количество строк.
  • Даты содержат скрытое время.
  • Числа отличаются на скрытых знаках после запятой.
  • Сравниваются служебные поля, которые не должны влиять на результат.

Скачать пример

example.xlsx с листами Версия1, Версия2, Сравнение.

Когда лучше автоматизировать

Автоматизация полезна при ежедневных/еженедельных версиях реестров и необходимости сохранять протокол изменений.

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

Похожие материалы

  • Как объединить две таблицы Excel в одну по совпадающему значению
  • Как сравнить два столбца Excel и найти совпадения
  • Как удалить дубликаты в Excel
  • Как собрать данные из нескольких Excel-файлов в один

Нужно автоматизировать похожую задачу?

Пришлите пример Excel или Word и описание результата — оценю подходящий вариант.