
Всем привет! Меня зовут Никита Гусев, я руковожу направлением EPM в компании «Инфосистемы Джет».
Если вы когда-нибудь видели, как финансист или аналитик ставит себе ТРЕТИЙ монитор, чтобы формулы помещались на экране, то сложности работы Excel в крупных компаниях примерно представляете. В статье расскажу, почему еще планирование в табличках — это больно, и по какому пути идут наши заказчики.
Просто пишите формулы
Сразу оговорюсь, сам по себе Excel шикарен, в хозяйстве вещь незаменимая.
Да и кроме формул инструментов достаточно. Использовать можно что угодно 一 от макросов до Power Query и Power Pivot. Не говоря уже о поддержке JavaScript и сотнях других надстроек на любой вкус, цвет и задачу.
Огромное количество возможностей делает Excel практически универсальным инструментом. Там теперь даже ведут каналы и общаются вместо мессенджеров (в Google Sheets, если быть точным). Это, конечно, уже из разряда юмора, но лишний раз подчеркивает: Excel 一 это буквально для всего.
Если еще не видели, зацените, как умелец сделал для таблиц старый добрый Doom.

Есть еще машина Тьюринга, о ней до нас подробно писали вот здесь.
А еще в таблицу уместили бюджет системы здравоохранения Новой Зеландии, хоть и не без косяков. О косяках поговорим отдельно.
И если раньше всеми возможностями владели только матерые профессионалы и завсегдатаи Планеты Excel, с развитием ИИ наступает «золотой век» Excel. Достаточно просто попросить у LLM формулу, и порог входа в зеленые таблички волшебным образом снижается настолько, что руками делать ничего не нужно.
Вообще агентский режим уже доступен в лицензиях Microsoft Copilot 365. Он очень старается, но не без приколов:

Так что лучше спросить скрепку Clippy, к нему доверия больше.
Все действительно так хорошо, но не для крупных компаний. В enterprise у Excel есть пять болевых точек — о них расскажу подробнее по опыту наших заказчиков.
Одновременная работа
Технически работать в одной книге Excel с помощью shared workbook можно. На практике начинаются конфликты правок. Excel блокирует диапазоны ячеек, ведет журнал изменений в скрытых листах, но не дает механизмов разрешения конфликтов. В итоге ты либо ждешь, пока коллега закроет файл, либо сохраняешь локальную копию (которую потом все равно нужно подружить с основным файлом).
В кейсе заказчика ситуация была чуть сложнее. Данные были связаны между листами, и любое изменение должно было запустить цепочку перерасчетов зависимых ячеек на листах филиалов. Но запускало некорректно, пока все пользователи не закроют файл. Результат: однажды цифры филиалов на несколько миллионов рублей не сошлись с цифрами по региону, и вся королевская конница проводила ручной аудит около 10 тысяч ячеек.
Когда одновременная работа дает сбой, крупные компании переходят на классический workflow — раздельные файлы и их консолидация. Но начинается ОН.
Версионный ад
Бессмертная классика: рассылка шаблона по email с просьбой заполнить и вернуть до определенной даты. Куча файлов с чем-то в стиле «финальный_финал» в названии — это родное.
Но один филиал отправляет годовой план в старом шаблоне, потому что «так делали в прошлом году». Другой добавляет свой столбец с расчетами и ломает сводные формулы. Теперь все это нужно не просто свести, а сначала привести к единому стандарту.
Согласование бюджета превращается в одну большую потерю времени, потому что нужно:
-
собрать файлы
-
привести все возможные версии к утвержденному шаблону
-
свести данные
-
и только потом согласовать бюджет со всеми стейкхолдерами
Немного суровой реальности: один из наших заказчиков из логистики две недели согласовывал план на … месяц. Это может быть незаметно при годовом планировании, когда на подготовку, согласования и корректировки закладывают несколько месяцев. Но когда нужно быстро отреагировать на внешние изменения или согласовать бюджет на квартал, классический workflow уже не справляется.
Макросы и формулы хороши, но все зависит от прямоты рук
Формулы и макросы чувствительны к установленным версиям самого Excel. Если эксперт написал макрос с использованием возможностей 2019 года или новой структуры меню Ribbon, в Excel 2016 файл просто выдаст ошибку. А еще корректность работы сильно зависит от настроек Excel на конкретной машине.
Так вот в любой крупной компании за десятки лет существования бюджетов в Excel таблицы рано или поздно обрастают макросами и формулами. Вариаций может быть множество, в зависимости от фантазии и навыков энтузиастов.
И если энтузиаст увольняется, автоматизация слетает с первыми изменениями в структуру данных.
Так получилось у одного из наших заказчиков: в таблице годового бюджета формулы расчета себестоимости 19000 SKU написал сотрудник, который уволился за 3 месяца до сборки годового бюджета. Человек ушел, структура бюджета изменилась, формулы никто не исправил — они начали ссылаться на несуществующие диапазоны и выдавать грустное #ССЫЛКА!.
Аудит изменений
В отличие от Google Sheets, в Excel нет инструмента централизованного аудита, который бы работал на всех платформах, не ломал бы функциональность и не зависел от доброй воли пользователя (включил ли он макросы).
Встроенный инструмент “track changes” требует отката до формата .xls, а это значит никаких Compare Workbooks, Power Query и динамических массивов. Макросы любой пользователь может отключить перед началом работы с книгой, и аудит превращается в необязательную опцию.
При работе с бюджетами, финмоделями и прогнозами это критично. Если ошибка в одной ячейке сбила все расчеты, гораздо проще найти ее в истории изменений, чем несколько часов копаться вручную.
Контроль качества и целостности данных
Чистый человеческий фактор против встроенных инструментов Excel. Защита листа и проверка данных в теории защищают от отрицательных значений и текста в поле с выручкой или удаления формул.
На практике в большинстве случаев все происходит наоборот:
-
ничего не работает по умолчанию, и авторы таблиц просто забывают включить валидацию данных и защиту листа
-
уязвимость к копипасту ячеек: новая ячейка вставляется поверх той, для которой написаны правила
-
авторы таблиц просто спешат согласовать бюджет и забивают на валидацию данных и защиту листов
С проверкой бизнес-логики такая же история: настроить ее можно, но это адский труд, когда ячеек сотни и тысячи. Никто, кроме Excel-маньяков так не делает. А если и делает, то сталкивается с теми же проблемами, что я описал выше.
Если коротко, в Excel защита от «дурака» не встроена в фундамент архитектуры и не спасает от особо изобретальных. Это опция, которую нужно настраивать, и ее все равно можно обойти.
А workflow вообще отсутствует как класс. Он не встроен в архитектуру Excel. Скорее наоборот: мы пытаемся встроить зеленые таблички в существующий бизнес-процесс.
Учитывая функциональные ограничения и человеческий фактор, в больших масштабах и проявляются описанные проблемы.
От таблиц спасает куб
И нет, это не жуткий куб из одноименного фантастического триллера.
Динамический куб данных (OLAP) — это объект системы, где информация организована в виде гиперкуба с произвольным числом измерений.
Суть технологии OLAP In-Memory — хранение многомерных кубов данных непосредственно в оперативной памяти (RAM), а не на медленном диске (HDD/SSD).
Что это дает:
1. Мгновенную скорость запросов — нет операций ввода-вывода к диску, вычисления идут на высоких скоростях шины памяти;
2. Высокую степень сжатия — данные в памяти оптимизируются (столбцовое хранение, битовые индексы), это позволяет хранить и быстро пересчитывать большие объемы;
3. Непредрасчитанные агрегаты — можно считать скользящие итоги или произвольные срезы «на лету» без предварительной подготовки всех вариантов сумм.
Такие кубы доступны в системах класса EPM (Enterprise Performance Management или система управления эффективностью предприятия), например, IBM Planning Analytics, Anaplan, Oracle Hyperion или российские Cubix, Optimacros, Форсайт, Планум и др.
Основные различия показал в таблице (ну да, что поделать).
|
Характеристика |
Традиционный подход (MS Excel) |
Многомерная модель (OLAP-кубы) |
|
Структура |
Двумерная (строки и столбцы) |
Многомерная (оси-измерения) |
|
Хранение |
Файловое (дублирование файлов) |
Единая централизованная база |
|
Пустые ячейки |
Утяжеляют файл, замедляют работу |
Игнорируются (разреженные матрицы) |
|
Агрегация |
Ручное прописывание формул =СУММ() |
Автоматическая по иерархии справочников |
|
Контроль доступа |
Пароли на листы |
Ролевая модель на уровне пересечения осей |
От плоской таблицы к многомерному массиву
В Excel мы ограничены двумя измерениями.
В кубе данных измерения (они же «оси» или «аналитики») — это независимые справочники с собственными иерархиями.
Что будет включать стандартный набор измерений для бюджетного куба, например, логистической компании:
● ЦФО (структура: Корпорация → Макрорегион → Филиал → Склад);
● ФЦО (функциональные центры: Логистика, ИТ, HR);
● Ресурсы, что потребляет функция (материалы, электроэнергия, ФОТ);
● Продукты, что функция производит (номенклатура);
● Контрагенты (поставщики, перевозчики);
● Годы;
● Периоды (иерархия времени: Квартал → Месяц → День);
● Версии (План / Факт / Прогноз / Уточнённый план).
Каждое измерение — это полноценная иерархия. В измерении «Периоды» январь и февраль — это детальные элементы, которые базовый движок куба автоматически консолидирует в «Квартал 1» без каких-либо формул.
А еще куб учитывает особенности методологии заказчика, например, продукты одной функции, которые одновременно являются ресурсами для другой.
Срез данных: когда куб становится таблицей
Ключевой инструмент работы с многомерной моделью — операция «среза» (slice). Пользователь фиксирует значения одних измерений в фильтре, а оставшиеся два (и более) выводит в строки и столбцы.
Например, можно «разрезать» куб так: в строках — филиалы, в столбцах — месяцы, а в контексте жестко зафиксировано: ФЦО = «Логистика», Версия = «План», Ресурс = «Дизельное топливо». Таких срезов можно создавать бесконечное множество, «вращая» куб в пространстве и перемещая измерения в строки или столбцы и обратно. Финансовый директор смотрит бюджет в разрезе макрорегионов, а категорийный менеджер — в разрезе SKU.
И это не разные разрозненные файлы, которые нужно искать в почте или корпоративном хранилище. Это консистентные проекции одних и тех же исходных данных.
Разреженные матрицы: почему 19 000 SKU не весят терабайты
19 000 товарных позиций × 71 склад × 42 филиала — это миллионы возможных комбинаций. Если попытаться собрать такую матрицу в Excel, система рухнет: в одном листе физически не может быть больше 1 миллиона строк.
Кубы решают это через технологию разреженных матриц (sparse matrix optimization). Система хранит в памяти только ячейки с данными (это актуально как минимум для Oracle Hyperion и IBM Planning Analytics). Филиал в Калининграде никогда не делает отгрузки со складов Владивостока, а склад №47 не использует 90% из 19 000 SKU. В многомерной СУБД пустая комбинация — это отсутствие записи в базе, она ничего не весит.
In-Memory вычисления и единое информационное пространство
В тяжелых финансовых моделях обычно десятки книг, каждую из которых нужно открыть, пересчитать, выполнить связи. В Excel любое изменение данных заставляет движок перестраивать гигантское дерево зависимых формул, что приводит к зависаниям на минуты или часы. Особенно, если мы говорим об офисных ноутбуках, они вряд ли потянут нагрузку.
В EPM-системах офисным железякам живется проще.
Когда экономист в филиале вводит цифру расходов, система не запускает цепочку макросов. Значение моментально записывается на пересечение координат, и агрегат на уровне «Итого по холдингу» обновляется за доли секунды. Все пользователи работают в единой центральной базе. Проблема конфликта версий решается на уровне транзакций: если два человека одновременно пытаются изменить одну ячейку, система обрабатывает запросы последовательно и фиксирует каждую операцию в журнале.
Workflow и аудит как фундамент платформы
Вместо пересылки файлов с приписками вроде «Бюджет_Финал_v3_копия.xlsx», EPM-системы используют встроенный workflow. Статус согласования — отдельное системное измерение. Перевод статуса из «Черновика» в «На согласовании» автоматически блокирует права на редактирование для отдельной категории или для всех пользователей и оставляет только право на чтение.
Аудит реализован на уровне ядра: система непрерывно пишет лог транзакций: кто, когда, с какого IP-адреса и какое значение изменил. Это неотключаемый механизм контроля, который страхует бизнес-процесс от случайных ошибок и делает планирование более прозрачным.
Что в итоге
Проблемы Excel в планировании и бюджетировании, о которых я рассказывал в первой части статьи, проявляются и растут с размером бизнеса и количеством участников процесса. В средней компании с парой филиалов и несколькими сотнями SKU – используйте Excel.
При таком масштабе недостатки зеленых табличек просто не успеют повлиять на качество планирования. С двумя-тремя ЛПРами можно легко договориться о схеме рабочего процесса и сильно не мучиться с версиями и их сведением. Ломающиеся формулы все еще будут раздражать, но нет смысла вкладываться в переход на EPM-системы.
В enterprise риски намного выше, поэтому EPM с кубами данных здесь полностью оправдан. В следующей статье расскажу, какие решения сейчас доступны на российском рынке, что лучше и почему.
ссылка на оригинал статьи https://habr.com/ru/articles/1029132/