Как сверить акты сверки в Excel: 5 проверенных способов с примерами

При сверке актов взаимозачёта в Microsoft Excel даже небольшая ошибка в одной ячейке может привести к расхождениям на миллионы рублей — особенно если речь идёт о сотнях строк с данными от контрагентов. Основная проблема возникает, когда суммы в вашем акте не совпадают с данными партнёра, а вручную искать расхождения в таблицах на 50+ позиций — это часы монотонной работы. Решение лежит в автоматизации: правильные формулы, условное форматирование и инструменты анализа данных в Excel позволяют выявить несовпадения за считанные минуты.

Первое, что нужно сделать перед сверкой — привести оба акта к единому формату. Часто расхождения возникают не из-за реальных ошибок, а из-за разного оформления: лишние пробелы в названиях товаров, разные форматы дат (ДД.ММ.ГГГГ vs ДД-ММ-ГГ) или округлённые суммы (например, 1 000,50 руб. vs 1 000 руб.). Далее мы разберём 5 методов сверки — от простых до продвинутых, — которые покрывают 90% практических кейсов, включая работу с большими объёмами данных и неструктурированными актами.

1. Подготовка актов к сверке: унификация данных

Перед тем как сравнивать два акта, их нужно привести к общему виду. Начните с проверки структуры столбцов: в обоих файлах должны совпадать порядок и названия колонок (например, "Номер документа", "Дата", "Сумма с НДС"). Если столбцы расположены по-разному, используйте функцию =ВПР() или =ИНДЕКС() для перестановки данных.

Особое внимание уделите:

  • 📌 Формату ячеек: преобразуйте даты в единый вид через Формат ячеек → Дата, а числовые значения (например, суммы) — в Числовой или Денежный.
  • 🔍 Лишним символам: удалите пробелы в начале/конце ячеек функцией =СЖПРОБЕЛЫ() или комбинацией =ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;" ";"");"¬";"") (где "¬" — неразрывный пробел).
  • 📊 Дубликатам: проверьте наличие повторяющихся строк с помощью Условное форматирование → Правила выделения ячеек → Повторяющиеся значения.
⚠️ Внимание: Если в актах используются разные валюты или курсы (например, доллары и рубли), приведите все суммы к одной валюте до сверки. Для этого добавьте дополнительный столбец с формулой пересчёта: =B2*Курс_валюты.
Проблема Пример Решение в Excel
Разные форматы дат 01.12.2023 vs 01-дек-23 Функция =ДАТАЗНАЧ() или Текст по столбцам (разделитель — символ)
Лишние пробелы " Товар А " vs "Товар А" =СЖПРОБЕЛЫ(A1) или НАЙТИ(" ") для поиска
Разные регистры "ООО Ромашка" vs "ооо ромашка" =ПРОПИСН(A1) или =СТРОЧН(A1) для унификации

2. Быстрая сверка по ключевому столбцу (ВПР или XLOOKUP)

Самый распространённый способ сверки — сравнение данных по уникальному идентификатору (например, номеру счета или наименованию товара). Для этого используйте функцию =ВПР() (или =XLOOKUP() в новых версиях Excel):

=ВПР(A2;Таблица_партнёра!A:B;2;ЛОЖЬ)

Где:

  • A2 — ячейка с уникальным идентификатором в вашем акте;
  • Таблица_партнёра!A:B — диапазон данных в акте контрагента (столбец A — идентификатор, столбец B — сумма);
  • 2 — номер столбца, откуда берётся значение для сравнения;
  • ЛОЖЬ — точный поиск (без приближений).

Если функция возвращает #Н/Д, значит строка отсутствует в акте партнёра. Чтобы выделить такие расхождения, добавьте условное форматирование:

  1. Выделите столбец с формулой ВПР.
  2. Перейдите в Главная → Условное форматирование → Создать правило.
  3. Выберите Форматировать только ячейки, которые содержатОшибки.
  4. Задайте красный цвет заливки.

3. Сверка с выделением расхождений (формулы ЕСЛИ + ВПР)

Чтобы не только найти расхождения, но и сразу увидеть, где суммы не совпадают, используйте конструкцию с =ЕСЛИ():

=ЕСЛИ(ABS(ВПР(A2;Партнёр!A:B;2;ЛОЖЬ) - B2) > 0; "Расхождение"; "Совпадает")

Эта формула:

  • 🔢 Сравнивает сумму из вашего акта (B2) с данными партнёра.
  • 🔴 Выводит "Расхождение", если разница больше 0 (с учётом модуля ABS, чтобы игнорировать знак).
  • 🟢 Выводит "Совпадает", если суммы идентичны.

Для визуализации добавьте условное форматирование по значению "Расхождение" (красный цвет) и "Совпадает" (зелёный). Если нужно учитывать погрешность (например, ±1 рубль из-за округления), модифицируйте формулу:

=ЕСЛИ(ABS(ВПР(A2;Партнёр!A:B;2;ЛОЖЬ) - B2) > 1; "Расхождение"; "Совпадает")
📊 Какой метод сверки вы используете чаще?
Вручную (визуально)
Формулы ВПР/XLOOKUP
Сводные таблицы
Power Query
Другое

4. Продвинутая сверка с помощью Power Query

Если акты содержат тысячи строк, формулы могут тормозить файл. В этом случае эффективнее использовать Power Query (вкладка Данные → Получить данные в Excel 2016+). Алгоритм:

  1. Импортируйте оба акта в Power Query через Из таблицы/диапазона.
  2. Объедините таблицы:
    • Выберите Объединить запросы → Объединение.
    • Укажите ключевой столбец (например, "Номер счета").
    • Выберите тип объединения Анти-пересечение (покажет строки, которые есть только в одном акте).
  3. Добавьте столбец с разницей:
    • Создайте новый столбец с формулой = [Сумма_ваша] - [Сумма_партнёра].
    • Отфильтруйте строки, где разница ≠ 0.
  • Загрузите результат на новый лист.
  • Power Query автоматически обновляет данные при изменении исходных файлов — это избавляет от необходимости пересчитывать формулы вручную. Если акты приходят в разных форматах (например, PDF или Word), предварительно конвертируйте их в Excel с помощью инструментов вроде Adobe Acrobat или онлайн-сервисов.

    Как импортировать данные из PDF в Excel для сверки

    1. Откройте PDF в Adobe Acrobat (или используйте онлайн-конвертер, например, SmallPDF).

    2. Экспортируйте таблицы в формат .xlsx.

    3. В Excel очистите лишние символы (артефакты конвертации) с помощью =ПОДСТАВИТЬ() или Текст по столбцам.

    4. Сохраните файл и приступайте к сверке.

    5. Сверка через сводные таблицы (для больших объёмов данных)

    Сводные таблицы позволяют агрегировать данные и быстро находить расхождения по группам (например, по контрагентам или периодам). Инструкция:

    1. Объедините оба акта на одном листе, добавив столбец "Источник" (значения: "Ваш акт" / "Акт партнёра").
    2. Создайте сводную таблицу:
      • Выделите весь диапазон данных.
      • Перейдите в Вставка → Сводная таблица.
      • В поле "Строки" перетащите столбец с уникальным идентификатором (например, "Номер документа").
      • В поле "Значения" добавьте суммы из обоих актов (Excel автоматически посчитает сумму по группам).
    3. Добавьте вычисляемое поле для разницы:
      • В сводной таблице нажмите Анализ → Поля, элементы и наборы → Вычисляемое поле.
      • Создайте формулу: = 'Сумма_ваша' - 'Сумма_партнёра'.
  • Отсортируйте по разнице, чтобы расхождения оказались вверху.
  • Преимущество метода: сводные таблицы позволяют сверять данные по нескольким критериям одновременно (например, по контрагенту и периоду). Если расхождений много, экспортируйте результат на отдельный лист для дальнейшего анализа.

    ⚠️ Внимание: При объединении актов убедитесь, что уникальные идентификаторы (номера счетов, договоров) не повторяются внутри одного акта. Если дубликаты есть, сводная таблица покажет некорректные суммы. Используйте Удалить дубликаты (Данные → Удалить дубликаты) перед созданием отчёта.

    6. Автоматизация сверки с помощью макросов

    Если сверка актов — регулярная задача, автоматизируйте её с помощью VBA-макросов. Ниже пример кода, который сравнивает два листа ("Ваш акт" и "Акт партнёра") и выделяет расхождения:

    Sub СверитьАкты()
    

    Dim ws1 As Worksheet, ws2 As Worksheet

    Dim lastRow1 As Long, lastRow2 As Long

    Dim i As Long, j As Long

    Dim keyCol As Integer: keyCol = 1 ' Столбец с уникальным идентификатором

    Dim sumCol As Integer: sumCol = 2 ' Столбец с суммами

    Set ws1 = ThisWorkbook.Sheets("Ваш акт")

    Set ws2 = ThisWorkbook.Sheets("Акт партнёра")

    lastRow1 = ws1.Cells(ws1.Rows.Count, keyCol).End(xlUp).Row

    lastRow2 = ws2.Cells(ws2.Rows.Count, keyCol).End(xlUp).Row

    ' Пометка расхождений в вашем акте

    For i = 2 To lastRow1

    Dim key As String: key = ws1.Cells(i, keyCol).Value

    Dim found As Boolean: found = False

    For j = 2 To lastRow2

    If ws2.Cells(j, keyCol).Value = key Then

    found = True

    If ws1.Cells(i, sumCol).Value <> ws2.Cells(j, sumCol).Value Then

    ws1.Cells(i, sumCol).Interior.Color = RGB(255, 100, 100) ' Красный

    End If

    Exit For

    End If

    Next j

    If Not found Then

    ws1.Cells(i, sumCol).Interior.Color = RGB(255, 255, 100) ' Жёлтый (отсутствует у партнёра)

    End If

    Next i

    End Sub

    Чтобы использовать макрос:

    1. Нажмите Alt + F11, чтобы открыть редактор VBA.
    2. Вставьте код в модуль (Insert → Module).
    3. Запустите макрос через F5 или кнопку на панели инструментов.

    Макрос помечает:

    • 🔴 Красным — строки, где суммы не совпадают.
    • 🟡 Жёлтым — строки, которых нет в акте партнёра.

    1. Убедитесь, что оба акта находятся на отдельных листах с названиями "Ваш акт" и "Акт партнёра".

    2. Проверьте, что уникальные идентификаторы расположены в первом столбце (A), а суммы — во втором (B).

    3. Включите макросы в настройках Excel: Файл → Параметры → Центр управления безопасностью → Параметры центра → Включить все макросы (только для доверенных файлов!).

    4. Сохраните файл в формате .xlsm (с поддержкой макросов).-->

    7. Типичные ошибки при сверке и как их избежать

    Даже при автоматизированной сверке возможны ложные расхождения. Рассмотрим распространённые ошибки и способы их устранения:

    Ошибка Причина Решение
    Формула ВПР возвращает #Н/Д, хотя строка есть Лишние пробелы или разный регистр в ключевом столбце Используйте =СЖПРОБЕЛЫ() и =ПРОПИСН() для унификации
    Расхождения в 1-2 рубля Округление сумм или разный порядок действий (например, НДС сверху vs НДС в том числе) Уточните у партнёра метод расчёта или используйте погрешность в формуле (ABS(разница) > 2)
    Макрос не находит строки Данные в столбцах имеют разный формат (текст vs число) Преобразуйте оба столбца в текст (=ТЕКСТ(A1;"0")) или число (=ЗНАЧЕН(A1))
    Сводная таблица показывает неверные итоги Дубликаты в исходных данных Удалите дубликаты перед созданием сводной таблицы

    Если после сверки остаются неясные расхождения, экспортируйте проблемные строки в отдельный файл и сверьте их вручную с оригинальными документами (счётами, накладными). Часто ошибка кроется в первичных данных, а не в методе сверки.

    1. Совпадают ли итоговые суммы (даже если все строки в порядке, может быть ошибка в подсчёте).

    2. Есть ли скрытые строки/столбцы в исходных файлах (они могут содержать важные данные).

    3. Корректно ли указаны периоды (иногда расхождения возникают из-за разных дат начала/окончания отчётного периода).-->

    FAQ: Ответы на частые вопросы

    Можно ли сверить акты, если в них разное количество столбцов?

    Да, но сначала приведите их к единой структуре. Если в акте партнёра есть лишние столбцы, скройте или удалите их. Главное — чтобы совпадали ключевые столбцы (идентификатор и сумма). Для объединения данных из разных столбцов используйте функцию =ОБЪЕДИНИТЬ() или CONCAT() (в новых версиях Excel).

    Как сверить акты, если они в разных валютах?

    Добавьте в оба акта столбец с пересчитанными суммами по единому курсу. Например, если в вашем акте суммы в рублях, а у партнёра — в долларах, используйте формулу:

    =B2 * Курс_доллара

    Где Курс_доллара — это ячейка с актуальным значением (например, 90 руб. за 1 USD). После этого сверяйте уже пересчитанные суммы.

    Что делать, если в актах разные наименования товаров/услуг?

    В этом случае сверку по названиям проводить нельзя — используйте дополнительные идентификаторы:

    • 📌 Код товара (если есть).
    • 📌 Номер счета или договора.
    • 📌 Дата и сумма (комбинация этих полей часто уникальна).

    Если уникальных полей нет, придётся вручную сопоставить строки или уточнить у партнёра соответствие позиций.

    Как экспортировать результат сверки в отдельный файл?

    Выделите диапазон с расхождениями (например, отфильтруйте по цвету заливки или значению "Расхождение"), затем:

    1. Скопируйте данные (Ctrl + C).
    2. Создайте новый файл Excel.
    3. Вставьте данные как Значения (правый клик → Специальная вставка → Значения).
    4. Сохраните файл с названием, например, Расхождения_по_акту_от_01.06.2026.xlsx.

    Для автоматизации экспорта используйте макрос:

    Sub ЭкспортироватьРасхождения()
    

    Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Результат")

    Dim newWB As Workbook: Set newWB = Workbooks.Add

    ws.UsedRange.Copy newWB.Sheets(1).Range("A1")

    newWB.SaveAs "C:\Папка\Расхождения_" & Format(Date, "dd.mm.yyyy") & ".xlsx"

    newWB.Close

    End Sub

    Какие альтернативы Excel можно использовать для сверки актов?

    Если Excel тормозит или не справляется с объёмом данных, рассмотрите:

    • 📊 Google Sheets: бесплатный аналог с похожими функциями (=VLOOKUP, =QUERY). Подходит для совместной работы.
    • 📈 Power BI: для визуализации крупных наборов данных и создания дашбордов.
    • 🗃️ 1С или другие бухгалтерские программы: если акты формируются в 1С, сверку можно сделать прямо там (отчёт "Анализ счёта").
    • 🤖 Python (библиотека Pandas): для автоматизации сверки больших файлов (например, через df.merge()).

    Для одноразовых задач подойдёт и Google Sheets, а для регулярной работы с большими объёмами лучше освоить Power Query или Python.