Найти в Дзене

LAMBDA в Excel: создаём собственные функции без VBA

Приветствуем, дорогие читатели! Когда-то создание собственных функций в Excel было уделом программистов, вооруженных VBA или JavaScript. Но времена меняются. Сегодня мы хотим рассказать вам о настоящей революции в мире электронных таблиц — функции LAMBDA. С её помощью любой пользователь может конструировать собственные формулы, давать им понятные имена и использовать так же легко, как стандартные функции Excel . Проще говоря, LAMBDA — это функция, которая создаёт другие функции. Вы берёте часто используемую или сложную формулу, заключаете её в конструкцию LAMBDA, и она превращается в новый инструмент, доступный во всей книге. Больше никакого бесконечного копирования одних и тех же расчетов и связанных с этим ошибок . Синтаксис у неё довольно лаконичен: =LAMBDA([параметр1; параметр2; ...], вычисление) Шаг 1. Проверяем формулу в ячейке
Сначала убедимся, что логика верна. В любой ячейке пишем тестовый вариант нашей будущей функции и сразу вызываем её с каким-нибудь числом: =LAMBDA(цена, ц
Оглавление

Приветствуем, дорогие читатели! Когда-то создание собственных функций в Excel было уделом программистов, вооруженных VBA или JavaScript. Но времена меняются. Сегодня мы хотим рассказать вам о настоящей революции в мире электронных таблиц — функции LAMBDA. С её помощью любой пользователь может конструировать собственные формулы, давать им понятные имена и использовать так же легко, как стандартные функции Excel .

Что такое LAMBDA и с чем её едят?

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

Синтаксис у неё довольно лаконичен:

=LAMBDA([параметр1; параметр2; ...], вычисление)

  • Параметры (до 253 штук) — это имена переменных, которые вы будете передавать в функцию (например, числа или ссылки на ячейки).
  • Вычисление — это та самая формула, которая должна вернуть результат. Она всегда указывается последней .

В чём магия? Пишем свою первую функцию

  1. Представим, что нам постоянно нужно рассчитывать налог с продаж (НДС), который составляет 22%. Вместо того чтобы каждый раз писать =A1*1,22, мы создадим свою функцию ЦенаСНДС .

Шаг 1. Проверяем формулу в ячейке
Сначала убедимся, что логика верна. В любой ячейке пишем тестовый вариант нашей будущей функции и сразу вызываем её с каким-нибудь числом:

=LAMBDA(цена, цена*1.22)(100)

Если всё правильно, Excel сразу покажет результат 122. Обратите внимание на (100) в конце — так мы передаём значение параметру цена (дальше мы будем ссылаться на ячейку в вычислениях).

Шаг 2. Переносим функцию в Диспетчер имен
Теперь сделаем так, чтобы нашей функцией можно было пользоваться в любой точке листа.

  • Переходим на вкладку Формулы и нажимаем кнопку Диспетчер имен (или Присвоить имя на Mac) .
  • В открывшемся окне жмём Создать.
  • В поле Имя вводим желаемое название — например, ЦенаСНДС.
  • Поле Примечание очень рекомендуется заполнить, например: "Добавляет 22% НДС к сумме". Это примечание будет отображаться в виде подсказки при вводе функции .
  • В поле Ссылается на (или Объект ссылки) вставляем скопированную формулу =LAMBDA(цена, цена*1.22).
  • Нажимаем Сохранить.
-2

Готово! Теперь в любой ячейке книги мы можем написать =ЦенаСНДС(B2), и она сработает точно так же, как если бы мы использовали родную функцию Excel . А если налог изменится, скажем, на 15%, нам не придётся править тысячи ячеек — достаточно изменить формулу в Диспетчере имен .

-3

Важно знать (чтобы не было ошибок)

  • Где работает? Функция доступна в Excel для Microsoft 365 (подписка), Excel 2024 и Excel для Интернета. В версиях 2021 года и старше её, к сожалению, нет .
  • Имена: Не используйте точки в именах параметров и убедитесь, что имя вашей новой функции не совпадает с уже существующими функциями Excel .
  • Ошибки: Если вы забудете вызвать функцию в ячейке после её создания (просто нажмете Enter), Excel покажет ошибку #ВЫЧИС!. Всегда добавляйте в конце скобки с аргументами для теста, например, (1).
  • Рекурсия: LAMBDA может вызывать саму себя. Это открывает огромные возможности, но будьте осторожны: если не задать условие выхода, можно получить бесконечный цикл и ошибку #ЧИСЛО! из-за слишком большого количества рекурсивных вызовов .

Заключение

Функция LAMBDA превращает Excel из простого калькулятора в полноценную среду программирования, доступную каждому . Она позволяет упростить самые сложные расчёты, сделать их понятными и избавиться от рутины.

Попробуйте создать свою первую функцию уже сегодня, и вы увидите, как ваша работа с электронными таблицами выйдет на новый уровень!

Если вам понравилась эта статья и вы хотите, чтобы мы разобрали создание более сложных формул — подписывайтесь на наш канал и пишите в комментарии вашу задачу! Делитесь этим постом с коллегами и друзьями, чтобы и они могли учиться новому.