Как сравнить план с фактом в Excel: от простых формул до автоматизированных дашбордов

Сравнение плановых и фактических показателей — одна из самых востребованных задач в Excel. Без этого невозможно оценить выполнение бюджета, анализировать продажи, контролировать KPI или готовить управленческую отчётность. Однако многие пользователи ограничиваются примитивным вычитанием столбцов, теряя возможность глубокого анализа отклонений, визуализации трендов и автоматизации процессов.

В этой статье вы найдёте 5 практических методов сравнения плана с фактом — от элементарных формул до продвинутых инструментов вроде Power Query и сводных таблиц. Мы разберём не только техническую сторону, но и типовые ошибки (например, почему процент выполнения иногда показывает 102% при факте ниже плана), а также дадим готовые шаблоны для бюджетирования, продаж и производственных отчётов.

Если вы работаете с большими массивами данных, важно понимать: сравнение плана с фактом в Excel — это не просто арифметика, а систематический процесс, который включает очистку данных, выбор правильных формул, настройку визуализации и интерпретацию результатов. Например, в финансовом анализе отклонение в 5% может быть критичным, а в производстве — нормой. Поэтому подход должен адаптироваться под конкретную задачу.

В статье используются примеры из реальных кейсов: сравнение бюджета компании, анализ продаж по регионам, контроль выполнения производственного плана. Все решения протестированы в Excel 2019 и Microsoft 365, но majority методов работают и в Excel 2016/2013 (огранчения указаны отдельно).

1. Базовое сравнение: формулы для расчёта отклонений

Начнём с азов — вычисления абсолютного и относительного отклонения. Этот метод подходит для небольших таблиц (до 1000 строк) и не требует дополнительных надстроек.

Допустим, у вас есть два столбца: План (B) и Факт (C). Чтобы рассчитать отклонение, используйте формулы:

  • 📌 Абсолютное отклонение (разница в единицах): =C2-B2. Если факт больше плана, результат положительный.
  • 📉 Процент выполнения плана: =C2/B2 (формат ячейки — процентный). Важно: если план равен 0, формула вернёт ошибку #DIV/0! — обработайте это через ЕСЛИОШИБКА.
  • 🔄 Процент отклонения (насколько факт отличается от плана): =(C2-B2)/B2.

Пример таблицы с формулами:

ПродуктПлан (шт.)Факт (шт.)Отклонение (шт.)% выполнения
Ноутбуки5045=C2-B2 → -5=C2/B2 → 90%
Мониторы3035=C3-B3 → +5=C3/B3 → 117%
Клавиатуры2000=C4-B4 → -200=ЕСЛИОШИБКА(C4/B4;0) → 0%
⚠️ Внимание: При расчёте процента выполнения плана формула =C2/B2 может показывать значения выше 100% даже если факт ниже плана — если в плане указаны отрицательные числа (например, плановые убытки). В таких случаях используйте =ЕСЛИ(B2<0;B2/C2;C2/B2).

2. Условное форматирование: визуализация отклонений

Цифры в таблице мало что говорят без визуального акцента. Условное форматирование помогает мгновенно выделить проблемные зоны: например, покрасить ячейки с отклонением более 10% в красный, а с перевыполнением плана — в зелёный.

Как настроить:

  1. Выделите столбец с отклонениями (например, D2:D100).
  2. Перейдите на вкладку Главная → Условное форматирование → Правила выделения ячеек → Больше....
  3. Задайте условия:
    • 🔴 Значение > 0 → зелёная заливка (перевыполнение).
    • 🟡 Значение между -5 и 0 → жёлтая заливка (незначительное отставание).
    • 🔴 Значение < -5 → красная заливка (критическое отклонение).

Как добавить значки трендов (стрелочки вверх/вниз)

Выделите столбец → Условное форматирование → Наборы значков → выберите "Тренды" (зелёная стрелочка вверх для роста, красная вниз для падения).

РегионПланФактОтклонение
Москва150165+15
СПб120118-2
Казань8070-10

📊 Какой тип визуализации отклонений вы используете чаще?
Условное форматирование
Графики
Сводные таблицы
Ручная разметка
Не визуализирую

3. Сводные таблицы: анализ отклонений по группам

Если данных много (например, продажи по 50 товарам в 10 регионах), сводные таблицы помогут агрегировать информацию и выявить тренды. Например, вы сможете увидеть, что в одном регионе все товары недовыполняют план, а в другом — перевыполняют.

Алгоритм создания сводной таблицы для сравнения плана с фактом:

  1. Выделите исходные данные (включая заголовки).
  2. Нажмите Вставка → Сводная таблица.
  3. В поле Строки перетащите категорию группировки (например, "Регион" или "Продукт").
  4. В поле Значения добавьте:
    • 📊 Сумма по План (переименуйте в "Итого план").
    • 📊 Сумма по Факт (переименуйте в "Итого факт").
    • 📊 Добавьте вычисляемое поле для отклонения: нажмите Поля, элементы и наборы → Вычисляемое поле, введите формулу =Факт-План.

Группировка данных по категориям (регионы, продукты, месяцы)|

Добавление вычисляемого поля для абсолютного отклонения|

Добавление вычисляемого поля для % выполнения|

Настройка формата чисел (разделители тысяч, знаки после запятой)|

Применение условного форматирования к итоговым значениям-->

Пример сводной таблицы для анализа продаж по регионам:

РегионИтого планИтого фактОтклонение% выполнения
Центр450480+30107%
Северо-Запад320300-2094%
Юг280310+30111%
Итого10501090+40104%
⚠️ Внимание: Если в сводной таблице появляются ошибки типа "#ЗНАЧ!" при расчёте процентов, проверьте, нет ли в исходных данных пустых ячеек или текста вместо чисел. Используйте Проверку данных (Данные → Работа с данными → Проверка данных) для очистки массива.

4. Графики и диаграммы: визуализация отклонений

Для презентации результатов руководителю или коллегам лучше использовать графики. В Excel есть несколько типов диаграмм, идеально подходящих для сравнения плана с фактом:

  • 📈 Гистограмма с группировкой: показывает план и факт рядом для каждой категории. Подходит для сравнения по товарам/регионам.
  • 📊 Линейчатая диаграмма: аналогична гистограмме, но с горизонтальными столбцами (удобно для длинных названий категорий).
  • 🔄 Диаграмма с накоплением: визуализирует вклад каждой категории в общее отклонение.
  • 🎯 Точечная диаграмма: полезна для анализа корреляции между планом и фактом (например, выявить товары, где факт всегда ниже плана).

Пошаговая инструкция по созданию гистограммы:

  1. Выделите данные (включая заголовки столбцов Категория, План, Факт).
  2. Нажмите Вставка → Вставить гистограмму → Группированная гистограмма.
  3. Добавьте Название диаграммы (например, "Сравнение плана и факта по регионам, 2026").
  4. Нажмите на любой столбец плана → Формат ряда данных → измените цвет на серый (чтобы факт выделялся).
  5. Добавьте Подписи данных (правый клик по столбцу → "Добавить подписи данных").

Пример диаграммы с отклонениями: Диаграмма: сравнение плана (серые столбцы) и факта (зелёные столбцы) по 5 регионам. Видно, что в регионах 2 и 4 факт ниже плана на 10-15%.

5. Продвинутые методы: Power Query и Power Pivot

Если вы работаете с большими данными (тысячи строк из разных источников), ручные формулы и сводные таблицы станут тормозить. Здесь помогут инструменты Power Query (для очистки и объединения данных) и Power Pivot (для сложных расчётов).

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

Решение через Power Query:

  1. Импортируйте все три файла: Данные → Получить данные → Из файла → Из книги Excel.
  2. В редакторе Power Query объедините таблицы по ключевому полю (например, "Код региона"): Главная → Объединить запросы.
  3. Добавьте столбец с отклонением: Добавить столбец → Пользовательский, формула = [Факт] - [План].
  4. Загрузите данные в Power Pivot и создайте меру для % выполнения: =DIVIDE(SUM(Таблица[Факт]); SUM(Таблица[План])).

Преимущества Power Pivot перед обычными формулами

✅ Работает с миллионами строк без тормозов|

✅ Поддерживает сложные вычисления (DAX)|

✅ Автоматически обновляет данные при изменении источников|

✅ Позволяет создавать иерархии (например, "Год → Квартал → Месяц")

⚠️ Внимание: При объединении данных в Power Query следите за типами соединений:
  • Внутреннее — только совпадающие записи (потеря данных, если есть расхождения в ключах).
  • Левое внешнее — все записи из первой таблицы + совпадающие из второй (рекомендуется для плана и факта).

6. Автоматизация: макросы и шаблоны для регулярных отчётов

Если сравнение плана с фактом — рутинная задача (например, ежемесячный отчёт), автоматизируйте её с помощью макросов. Например, макрос может:

  • 📂 Импортировать данные из внешних файлов.
  • 🧮 Рассчитывать отклонения и проценты.
  • 📊 Строить диаграммы и применять условное форматирование.
  • 📄 Сохранять отчёт в PDF и отправлять по email.

Пример макроса для расчёта отклонений:

Sub CalculateDeviations()

Dim ws As Worksheet

Set ws = ThisWorkbook.Sheets("Отчёт")

' Рассчитываем отклонение

ws.Range("D2:D100").Formula = "=RC[-1]-RC[-2]"

' Рассчитываем % выполнения

ws.Range("E2:E100").Formula = "=IFERROR(RC[-1]/RC[-2], 0)"

' Применяем процентный формат

ws.Range("E2:E100").NumberFormat = "0%"

' Условное форматирование

ws.Range("D2:D100").FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, Formula1:="0"

ws.Range("D2:D100").FormatConditions(1).Interior.Color = RGB(0, 255, 0) ' Зелёный

ws.Range("D2:D100").FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, Formula1:="0"

ws.Range("D2:D100").FormatConditions(2).Interior.Color = RGB(255, 0, 0) ' Красный

End Sub

Готовые шаблоны для сравнения плана с фактом:

FAQ: Частые вопросы по сравнению плана с фактом

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

Используйте Power Query (см. раздел 5) или формулу ВПР/ИНДЕКС-ПОИСКПОЗ для подтягивания данных. Пример:

=ВПР(A2; [Книга2.xlsx]Лист1!$A$2:$C$100; 2; ЛОЖЬ)

Где A2 — ключ (например, код товара), а [Книга2.xlsx]Лист1!$A$2:$C$100 — диапазон с планом в другом файле.

Почему процент выполнения плана показывает 102%, хотя факт ниже плана?

Это происходит, если в плане стоят отрицательные числа (например, плановые убытки -100, а факт -98). Формула =Факт/План даст 0.98, но в процентном формате это отобразится как 98%. Чтобы исправить, используйте:

=ЕСЛИ(План<0; План/Факт; Факт/План)
Как сравнить план с фактом по датам (например, ежемесячное выполнение)?

Создайте сводную таблицу с группировкой по месяцам или используйте График с накоплением. Для динамического анализа добавьте Срезы (Вставка → Срез), чтобы фильтровать данные по годам/кварталам.

Пример формулы для расчёта отклонения по месяцам:

=СУММЕСЛИМН(Факт!$B:$B; Факт!$A:$A; A2; Факт!$C:$C; "Январь") - СУММЕСЛИМН(План!$B:$B; План!$A:$A; A2; План!$C:$C; "Январь")
Можно ли сравнить план с фактом в Google Таблицах?

Да, все описанные методы работают и в Google Sheets, за исключением Power Pivot (там используется App Scripts вместо VBA). Формулы идентичны, а для условного форматирования перейдите в Формат → Условное форматирование.

Отличия:

  • 🔹 Вместо ВПР лучше использовать INDEX(MATCH()) — оно быстрее.
  • 🔹 Для импорта данных из других файлов используйте =IMPORTRANGE.
Как автоматически обновлять сравнение плана с фактом при изменении данных?

Настройте динамические диапазоны и Таблицы Excel:

  1. Преобразуйте данные в умную таблицу: Главная → Форматировать как таблицу.
  2. Для формул используйте ссылки на столбцы таблицы (например, =СУММ(Таблица1[Факт]) вместо =СУММ(C2:C100)).
  3. Для внешних данных настройте Power Query с автоматическим обновлением (Данные → Обновить все).

Чтобы обновление происходило при открытии файла, добавьте этот код в модуль ThisWorkbook:

Private Sub Workbook_Open()

ThisWorkbook.RefreshAll

End Sub