Создание первой лямбда-функции Excel

 Теперь вы можете создавать свои собственные пользовательские функции в Excel без VBA или макросов.

Они известны как лямбда-функции, и вот как это сделать.

Создадим функцию «между», которая сравнивает значение ячейки с другими ячейками, содержащими минимальное и максимальное значение. Если значение ячейки находится в пределах диапазона этих минимальных и максимальных значений, то функция вернет .

ИСТИННЫЙ

Для лямбда-функции требуется по крайней мере один параметр и требуемая формула без предшествующего .

=

Он всегда начинается с ' = ЛЯМБДА'.

Учитывая вышеуказанные требования, наша формула будет выглядеть так:

=ЛЯМБДА(val, lo, hi, И(val >= lo, val <= hi ))

Валь
, , и — параметры функции (значение ячейки и значения min/max), за которыми следует простая формула. Оба эти условия должны быть выполнены, чтобы формула вернулась .
вот
Привет
И
ИСТИННЫЙ

Синтаксис формулы можно ввести в любую запасную ячейку. Однако вы также должны передать некоторые тестовые значения в скобках, сразу после синтаксиса (см. ячейку K2 на скриншоте ниже):

Определение между:

Как только мы это сделаем, менеджер имен должен правильно определить формулу.

Нам не нужно передавать какие-либо тестовые значения, только саму формулу.

Мы также можем добавить комментарии, чтобы напомнить себе, что такое параметры функции и для чего она нужна.

Используйте сочетание клавиш Ctrl + J, чтобы эти комментарии отображались в отдельных строках

Комментарий-между:

В дополнение к , я определил . Это похоже на между, за исключением того, что минимальные и максимальные значения исключены

между
внутри

=ЛЯМБДА(val, lo, hi, (AND(val>lo, val<hi )))

Ниже приведены комментарии к этой функции LAMBDA:

Проверьте, не больше ли значение нижнего предела и меньше верхнего предела, исключая граничные значения
val - ячейка для сравнения
lo - нижний предел значений
hi - более высокий предел значений

Я также определил функцию, чтобы проверить, является ли значение одним из набора из 3 целевых значений

member_of

=ЛЯМБДА(val;target1;target2;target3; ИЛИ(val = цель1, val = цель2, val = цель3))

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

Результаты

Вы можете увидеть фактическую формулу в каждой ячейке:

Результаты

Это простые примеры, но не заблуждайтесь. С некоторой ненужностью у вас теперь есть новый набор способностей Excel.

Десять лет назад я начал изучать R, потому что не мог достичь того, чего хотел в Excel.

Мне удалось воспроизвести результаты моего пакета {runcharter} с помощью некоторых пользовательских функций LAMBDA.

В Excel еще есть жизнь!

Комментарии

Популярные сообщения из этого блога

Опробование GPT4All в Arch Linux

10 способов использовать генеративный ИИ для продвинутого SEO

Как настроить Atom как Python IDE?

Yandex.Metrika counter