Как найти, что изменилось между двумя версиями таблицы
Чтобы найти, что изменилось между двумя версиями таблицы, сопоставьте каждую строку старого файла с парной строкой в новом, а затем сравните ячейки каждой пары. Самое трудное здесь — сопоставление. Построчное сравнение по позиции ломается, как только добавляется строка или файл пересортировывают: каждая следующая строка сравнивается с чужой парой. Сопоставление по ключевому столбцу, например номеру заказа, сохраняет пару для каждой записи, даже когда строки сдвигаются.
Сравнение таблицНайти, что изменилось в файлахСделать бесплатноПочему порядок строк ломает простое сравнение
Сравнение второй строки со второй быстрое и простое, но его легко обмануть. Добавьте одну строку вверху, и каждая последующая строка окажется в паре с неверной. В результате появятся сотни «изменений», которые на самом деле являются одним изменением. Сортировка даёт ту же проблему. Пересортировка не меняет данных, но сравнение по позиции покажет каждую перемещённую строку как изменённую. Если различий слишком много, сначала проверьте порядок строк.
Используйте ключевой столбец
Ключевой столбец идентифицирует строку и не меняется для этой строки: номер заказа, код товара, ID клиента. Выбирайте столбец, в котором каждое значение встречается один раз. Если ключ повторяется, сравнение не сможет понять, какая строка какая, поэтому найдите столбец получше или объедините два.
С ключом каждая строка попадает в одну из четырёх групп:
- Добавлено. Ключ есть только в новом файле.
- Удалено. Ключ есть только в старом файле.
- Изменено. Ключ есть в обоих файлах, и хотя бы одна ячейка отличается.
- Не изменено. Ключ есть в обоих, и все сравниваемые ячейки совпадают.
Сравните два файла: вы выбираете ключевой столбец, видите каждую группу с количеством и список отличающихся ячеек в каждой изменённой строке.
Изменённые ячейки и столбцы, которые всегда меняются
Изменённая строка может отличаться лишь одной ячейкой из тридцати, поэтому смотрите на ячейки. Изменение цены с 12.50 на 13.00 — другой тип изменения, чем новый адрес в той же строке. Игнорируйте столбцы, которые меняются при каждом сохранении, например «дату последнего изменения», чтобы они не заполняли список.
Регистр и пробелы тоже важны. Для компьютера «Berlin» и «berlin » — разные значения. Игнорирование регистра и пробелов по краям убирает такие ложные изменения, но исправленное написание — это настоящее изменение, поэтому включайте эти настройки, только если разница вам не важна.
Числа, которые выглядят по-разному, но равны
Две ячейки могут показывать разный текст и хранить одно и то же значение. Это самый частый источник ложных изменений:
- Разделители разрядов. 1,000 и 1000 — одно и то же число.
- Десятичные знаки. 12.5, показанное как 12.50, — то же значение в другом отображении.
- Денежные форматы. Ячейка с форматом £5 хранит число 5. Ячейка, введённая как текст со знаком £, — нет.
- Даты. Таблица хранит дату как порядковый номер и показывает его в выбранном формате, поэтому 03/04/2026 и 2026-04-03 могут быть одним и тем же днём.
Инструмент «Сравнение таблиц» читает числа так, как их записывает таблица, и использует значения, сохранённые в Excel, а не формулы, которые их создали. Число, сохранённое как текст, сравнивается как текст, поэтому проверьте тип данных каждого столбца перед тем, как доверять сравнению этого столбца.
Компьютеры также хранят десятичные числа в двоичном виде, поэтому 0.1 + 0.2 в большинстве языков программирования не равно точно 0.3. Настройка допуска считает числа равными, если они отличаются не больше, чем на заданную вами величину, например на 0.01 для одного цента.
Когда общего ключа нет
Используйте ближайшую стабильную пару, которая у вас есть, например имя и дату рождения, и проверьте выборку вручную. Если всё же сравниваете по позиции, читайте результат как «эти строки отличаются на одном и том же месте», а не как доказательство того, что именно изменилось.
Объединение и сопоставление: смежные задачи
Сравнение отвечает на вопрос, что отличается между двумя версиями одной таблицы. Объединение отвечает на вопрос, как связаны две разные таблицы. VLOOKUP — самое простое объединение: он находит совпадающий ключ в другой таблице и возвращает из неё значение. Две ловушки вызывают большинство его сюрпризов. Он смотрит только на первый столбец диапазона, поэтому ключ должен стоять слева. И он возвращает первое найденное совпадение, так что ключ, встречающийся дважды, незаметно сводится к одной строке. Пропуск последнего аргумента также переключает его на приблизительное сопоставление. XLOOKUP не требует ключа слева, но всё равно возвращает одно совпадение на каждый запрос.
Объедините две таблицы по общему столбцу: та же работа без формул. Выберите ключ в каждой таблице и тип объединения:
- Сохранить все строки слева оставляет каждую строку первой таблицы и добавляет совпадающие столбцы там, где они есть.
- Только совпадения оставляет лишь строки, найденные в обеих.
- Строки слева без пары показывает, чего не хватает во второй таблице, и часто это самый полезный результат.
Для повторяющихся ключей Первое совпадение работает как VLOOKUP. Все совпадения добавляет строку на каждое совпадение, так что клиент, который встречается справа трижды, появится в результате трижды. Посчитайте строки до и после и сначала проверьте дубликаты.
Имена написаны по-разному
Точные ключи не срабатывают, когда одно и то же записано двумя способами: «Jon Smith» и «John Smith», «Müller» и «Mueller». Нечёткое сопоставление списков сопоставляет каждое имя из одного списка с ближайшим в другом и выставляет оценку. Оценка — это больший из двух показателей. Один сравнивает буквы по порядку и поощряет общее начало, что подходит для «Smith» и «Smyth». Другой сравнивает слова, поэтому имя, все слова которого есть в другом имени, получает 100. С 100 будьте внимательны, когда в одном имени есть лишние слова. Инструмент игнорирует диакритические знаки и знаки препинания и может отбрасывать слова, обозначающие компанию, например Inc или Ltd. Оценка всё равно остаётся приблизительной, поэтому просмотрите пары, прежде чем их принимать.
Пограничные случаи
- Невидимые символы делают одинаково выглядящие ключи разными. Удалите невидимые символы, если совпадающие на вид ключи не сопоставляются.
- Ведущие нули исчезают, когда файл открывается в таблице, поэтому «00421» больше не совпадает со своей текстовой версией. Включите Игнорировать ведущие нули в объединении, чтобы оба написания считались одним ключом.
- Скрытые столбцы по-прежнему учитываются в сравнении, если вы их не игнорируете.
Короткий порядок действий
- Выберите ключевой столбец в обоих файлах и проверьте, что он уникален.
- Сравнивайте по ключу и включайте правила регистра и пробелов только там, где разница вам не важна.
- Игнорируйте столбцы, которые меняются при каждом сохранении.
- Проверьте итоги. При уникальных ключах «не изменено» + «изменено» + «удалено» равно числу строк в старом файле, а «не изменено» + «изменено» + «добавлено» равно числу строк в новом.
Краткие ответы
Почему одна вставленная строка помечает всё как изменённое?
Сравнение по позиции связывает каждую строку с той, что стоит под тем же номером, а вставка сдвигает все последующие строки. Сравнивайте по ключевому столбцу.
Почему два файла с одинаковыми числами показывают изменения?
Скорее всего, значения сохранены как текст или отформатированы по-разному. Проверьте тип столбца.
Переведено с помощью ИИ с Английский оригинал.
Комментарии
Комментариев пока нет. Будьте первым.


