Домой Софт Как функция LET превращает сложные формулы Excel в понятные инструкции

Как функция LET превращает сложные формулы Excel в понятные инструкции

Функция LET в Excel позволяет присваивать имена промежуточным вычислениям. Это делает громоздкие формулы структурированными и легкими для чтения.

1
0

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

Окно Microsoft Excel с длинной вложенной формулой для расчета баллов продавца

Почему классические длинные формулы сложны для восприятия

Рассмотрим пример таблицы, где для конкретного продавца (ячейка B1) вычисляется итоговый балл (ячейка B2). Оценка складывается из трех показателей: выполнения плана продаж (50 баллов), рентабельности (30 баллов) и среднего рейтинга покупателей (20 баллов). Традиционная формула может выглядеть так:

=MIN(SUMIFS(tblSales[Revenue], tblSales[Salesperson], B1)/MAXIFS(tblSales[Sales Target], tblSales[Salesperson], B1), 1)*50+(SUMIFS(tblSales[Profit], tblSales[Salesperson], B1)/SUMIFS(tblSales[Revenue], tblSales[Salesperson], B1))*30+(AVERAGEIFS(tblSales[Customer Rating], tblSales[Salesperson], B1)/5)*20

В этой формуле нет ошибок, она дает верный результат, но её обслуживание превращается в проблему. Чтобы внести изменения, необходимо распознать, какая часть отвечает за выручку, какая за план, а какая за рейтинг. Кроме того, здесь присутствует дублирование: суммарная выручка рассчитывается дважды. Это не только удлиняет код, но и усложняет внесение правок.

Функция LET как способ структурирования вычислений

Функция LET, доступная в Excel для Microsoft 365, Excel 2024, Excel 2021 и веб-версии, позволяет присвоить промежуточным вычислениям значимые имена. Это превращает «стену» из функций в прозрачный алгоритм. Сначала вы задаете имя переменной, затем ставите запятую и указываете формулу, которая формирует её значение.

функция LET в Excel — иллюстрация 2 к материалу
Расчет выручки через функцию LET

Используя LET, мы можем разбить задачу на логические блоки:

  1. revenue — расчет выручки через SUMIFS.
  2. target — получение плана продаж через MAXIFS.
  3. profit — расчет прибыли через SUMIFS.
  4. rating — вычисление среднего рейтинга через AVERAGEIFS.

Теперь, имея эти переменные, можно вычислить целевые показатели: targetScore (отношение выручки к плану, ограниченное 100%), profitMargin (рентабельность) и ratingScore (рейтинг по 5-балльной шкале). Итоговая формула принимает следующий вид:

=LET(revenue, SUMIFS(tblSales[Revenue], tblSales[Salesperson], B1), target, MAXIFS(tblSales[Sales Target], tblSales[Salesperson], B1), profit, SUMIFS(tblSales[Profit], tblSales[Salesperson], B1), rating, AVERAGEIFS(tblSales[Customer Rating], tblSales[Salesperson], B1), targetScore, MIN(revenue/target,1), profitMargin, profit/revenue, ratingScore, rating/5, (targetScore*50)+(profitMargin*30)+(ratingScore*20))

функция LET в Excel — иллюстрация 3 к материалу
Определение прибыли и среднего рейтинга

Теперь логика вычислений очевидна. Более того, расчет выручки выполняется лишь один раз, а результат переиспользуется, что оптимизирует структуру формулы. Если потребуется изменить веса или алгоритм расчета одной из составляющих, найти нужный компонент внутри LET будет значительно проще.

Выбор между вспомогательными таблицами и функцией LET

Несмотря на преимущества LET, существуют ситуации, когда традиционные вспомогательные таблицы (helper tables) предпочтительнее. Если промежуточные данные необходимо использовать в других частях листа, например для создания сводных таблиц или графиков, классический подход с отдельными столбцами выигрывает. Вспомогательная таблица делает промежуточные этапы наглядными и доступными для внешних инструментов.

функция LET в Excel — иллюстрация 4 к материалу
Создание именованных переменных для промежуточных баллов

Однако у вспомогательных таблиц есть свои минусы: они создают лишние «движущиеся части» в книге, увеличивают объем структуры и повышают риск ошибок при изменении данных. Правило выбора здесь простое: если расчет полезен сам по себе за пределами одной формулы, используйте вспомогательные столбцы. Если же он служит лишь для получения конечного значения, LET позволит сохранить структуру книги чистой, скрыв всю «техническую» логику внутри одной ячейки.

Почему «длинные» формулы напоминают код Энигмы

Проблема «монструозных» формул, которые мы привыкли создавать годами, кроется не только в их длине, но и в когнитивной нагрузке при их чтении. Когда вы возвращаетесь к такой формуле спустя год, попытка расшифровать её логику ощущается как взлом шифра Энигмы. Вам приходится буквально «разбирать» каждую функцию на части, вспоминая, что именно делает конкретный SUMIFS — извлекает ли он выручку или считает общие затраты — и как эти куски кода связаны друг с другом в едином полотне из скобок.

функция LET в Excel — иллюстрация 5 к материалу
Применение весовых коэффициентов к расчетным переменным

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

Структура через LET: переход на понятный язык

Функция LET меняет саму парадигму взаимодействия с Excel. Вместо того чтобы заставлять коллег (или самого себя в будущем) переводить «стену» функций в концепции, вы прямо в формуле определяете терминологию. Вы объявляете имя, ставите запятую и указываете формулу, которая формирует значение для этого имени. Итоговая формула становится похожа на программу, где сначала инициализируются переменные, а затем они комбинируются для получения результата:

функция LET в Excel — иллюстрация 6 к материалу
Финальный расчет балла через функцию LET

=LET(
revenue, SUMIFS(tblSales[Revenue], tblSales[Salesperson], B1),
target, MAXIFS(tblSales[Sales Target], tblSales[Salesperson], B1),
profit, SUMIFS(tblSales[Profit], tblSales[Salesperson], B1),
rating, AVERAGEIFS(tblSales[Customer Rating], tblSales[Salesperson], B1),
targetScore, MIN(revenue/target,1),
profitMargin, profit/revenue,
ratingScore, rating/5,
(targetScore*50)+(profitMargin*30)+(ratingScore*20) )

Такой подход делает формулу «читаемой». При взгляде на неё вы видите не набор функций, а список строительных блоков: выручку, цель, прибыль, рейтинг и итоговые коэффициенты. Вы буквально видите логику, скрытую под капотом, и можете легко изменить вес любого показателя, не рискуя сломать всю конструкцию.

Когда действительно нужны вспомогательные формулы

Несмотря на мощь LET, важно понимать, когда стоит предпочесть проверенные «вспомогательные формулы» (helper formulas). Вспомогательные вычисления — это любые дополнительные столбцы или таблицы, которые содержат промежуточные этапы расчетов. Основная их ценность в том, что они делают каждый этап прозрачным для всей книги, а не только для одной ячейки.

Выбирайте вспомогательные формулы в следующих случаях:

функция LET в Excel — иллюстрация 7 к материалу
Использование вспомогательной таблицы для промежуточных вычислений
  • Если вы планируете использовать промежуточные результаты в других частях книги.
  • Если вам нужно отобразить эти данные на графиках или диаграммах.
  • Если расчеты станут основой для сводных таблиц (PivotTables).

Однако помните: каждое дополнительное вычисление за пределами основной ячейки — это новая «движущаяся часть» вашей модели. Чем больше таких частей, тем больше возможностей для поломки ссылок или случайного удаления данных другими пользователями. Вспомогательные столбцы часто требуют ручного скрытия или группировки, чтобы лист выглядел опрятно, что само по себе усложняет навигацию по файлу. LET же позволяет хранить всю вспомогательную логику «внутри» одной ячейки, не перегружая структуру листа лишними техническими данными, которые большинству пользователей знать необязательно.

Бонус для продвинутых: документирование прямо в формуле

Помимо очевидной структуры, LET позволяет делать формулы ещё более понятными для стороннего наблюдателя. Вы можете использовать трюк с функцией N(), чтобы внедрять в формулу пояснительные текстовые комментарии. Поскольку функция N() возвращает 0 для любого текста, она никак не влияет на результат вычислений, но позволяет вам «подшивать» краткие текстовые пояснения к сложным этапам логики, превращая формулу в самодокументированный код.

Источник: https://www.howtogeek.com