Використовуйте функцію LAMBDA, щоб створювати спеціальні функції для повторного використання та називати їх зрозумілим іменем. Нова функція доступна в усій книзі та називається рідними функціями Excel.
Ви можете створити функцію для часто використовуваної формули, усунути необхідність копіювання та вставлення цієї формули (яка може бути схильна до помилок), а також ефективно додати власні функції до власної бібліотеки функцій Excel. Крім того, функція LAMBDA не потребує VBA, макросів або JavaScript, тому непрограмери також можуть скористатися її використанням.
Синтаксис
=LAMBDA([параметр1, параметр2,...,] обчислення)
Аргумент |
Опис |
---|---|
параметр |
Значення, яке потрібно передати функції, наприклад посилання на клітинку, рядок або число. Можна ввести до 253 параметрів. Цей аргумент необов'язковий. |
обчислення |
Формула, яку потрібно виконати, і повернути як результат функції. Це має бути останній аргумент, і він повинен повернути результат. Цей аргумент обов'язковий. Цей аргумент обов'язковий. |
Примітки
-
Імена та параметри Lambda відповідають правилам синтаксису Excel для імен за одним винятком: не використовуйте крапку (.) в імені параметра. Докладні відомості див. в статтіІмена у формулах.
-
Переконайтеся, що ви дотримуєтеся практичних порад, коли створюєте функцію LAMBDA так само, як і з будь-якою власною формулою Excel, наприклад проходячи правильне число та тип аргументів, зіставляючи відкриті та закривні дужки, а також вводячи числа як неформатовані. Крім того, коли ви використовуєте команду Обчислити , Excel відразу повертає результат функції LAMBDA, і в неї не можна ввійти. Докладні відомості див. в статті Виявлення помилок у формулах.
Помилки
-
Якщо ввести більше 253 параметрів, Excel поверне #VALUE! помилку #REF!.
-
Якщо до функції LAMBDA передається неправильна кількість аргументів, Excel повертає #VALUE! помилку #REF!.
-
Якщо ви викликаєте функцію LAMBDA зсередини, а виклик циклічний, Excel може повернути #NUM! помилку, якщо забагато рекурсивних викликів.
-
Якщо ви створюєте функцію LAMBDA в клітинці, не викликавши її з клітинки, Excel поверне #CALC! помилку #REF!.
Створення функції LAMBDA
Нижче наведено покрокові інструкції, які допоможуть переконатися, що Lambda працює належним чином і нагадує поведінку вбудованої функції Excel.
Переконайтеся, що формула, яка використовується в аргументі обчислення , працює належним чином. Це дуже важливо, оскільки під час створення функції LAMBDA потрібно переконатися, що формула працює, і ви можете виключити це, якщо виникають помилки або неочікувана поведінка. Докладні відомості див. в статті Огляд формул у програмі Excelі Створення простої формули в Excel.
Радимо створити та перевірити функцію LAMBDA в клітинці, щоб переконатися, що вона працює правильно, включно з визначенням і проходженням параметрів. Щоб уникнути #CALC! помилку, додайте виклик до функції LAMBDA, щоб негайно повернути результат:
=Функція LAMBDA ([параметр1, параметр2, ...],обчислення) (виклик функції)
У наведеному нижче прикладі повертається значення 2.=LAMBDA(number, number + 1)(1)
Завершивши роботу функції LAMBDA, перемістіть її до диспетчера імен для остаточного визначення. Таким чином ви надаєте функції LAMBDA змістовне ім'я, надаєте опис і робите її повторною для використання з будь-якої клітинки в книзі. Ви також можете керувати функцією LAMBDA так само, як і для будь-якого імені, наприклад рядкових констант, діапазону клітинок або таблиці.
Процедура
-
Виконайте одну з таких дій:
-
В Excel для Windows виберіть Формули > Диспетчер імен.
-
В Excel для Mac виберіть Формули > Визначити ім'я.
-
-
Натисніть кнопку Створити, а потім введіть відомості в діалоговому вікні Нове ім'я:
Ім’я:
Введіть ім'я функції LAMBDA.
Область:
Книга використовується за замовчуванням. Окремі аркуші також доступні, за винятком вебпрограма Excel.
Примітка:
Необов'язкова, але дуже рекомендована. Введіть до 255 символів. Коротко опишіть призначення функції та правильну кількість і тип аргументів.
Відображається в діалоговому вікні Вставлення функції і як підказка (разом з аргументом Обчислення ), коли ви вводите формулу та використовуєте Автозаповнення формули (також називається Intellisense).
Посилається на:
Введіть функцію LAMBDA.
Приклад:
-
Щоб створити функцію LAMBDA, натисніть кнопку OK.
-
Щоб закрити діалогове вікно Диспетчер імен, натисніть кнопку Закрити.
Докладні відомості див. в статті Використання диспетчера імен.
Приклади
Визначте в диспетчері імен таке:
Ім’я: |
ToCelsius |
Область: |
Книга |
Примітка: |
Перетворення температури за Фаренгейтом на Цельсія |
Посилається на: |
=LAMBDA(temp, (5/9) * (Temp-32)) |
Скопіюйте дані з наведеної нижче таблиці та вставте їх у клітинку A1 нового аркуша Excel. За потреби можна змінити ширину стовпців, щоб відобразити всі дані.
Дані |
|
104 |
|
86 |
|
68 |
|
50 |
|
32 |
|
Формула |
Результат |
=TOCELSIUS(A2) |
40 |
=TOCELSIUS(A3) |
30 |
=TOCELSIUS(A4) |
20 |
=TOCELSIUS(A5) |
10 |
=TOCELSIUS(A6) |
0 |
Визначте в диспетчері імен таке:
Ім’я: |
Hypotenuse |
Область: |
Книга |
Примітка: |
Отримуємо довжину гіпотенузи прямокутного трикутника |
Посилається на: |
=LAMBDA(a, b, SQRT((a^2+b^2))) |
Скопіюйте дані з наведеної нижче таблиці та вставте їх у клітинку A1 нового аркуша Excel. За потреби можна змінити ширину стовпців, щоб відобразити всі дані.
Дані |
|
3 |
4 |
5 |
12 |
7 |
24 |
9 |
40 |
Формула |
Результат |
=HYPOTENUSE(A2,B2) |
5 |
=HYPOTENUSE(A3,B3) |
13 |
=HYPOTENUSE(A4,B4) |
25 |
=HYPOTENUSE(A5,B5) |
41 |
Визначте в диспетчері імен таке:
Ім’я: |
CountWords |
Область: |
Книга |
Примітка: |
Рахує кількість слів у текстовому рядку |
Посилається на: |
=LAMBDA(text, LEN(TRIM(text)) - LEN(SUBSTITUTE(TRIM(text), " ", "")) + 1) |
Скопіюйте дані з наведеної нижче таблиці та вставте їх у клітинку A1 нового аркуша Excel. За потреби можна змінити ширину стовпців, щоб відобразити всі дані.
Дані |
|
Щось злостиве таким чином приходить. |
|
Я прийшов, я побачив, я завоював. |
|
Швидка коричнева лисиця перескочила над ледачим собакою. |
|
Застосовуй силу, Люк! |
|
Формула |
Результат |
=COUNTWORDS(A2) |
5 |
=COUNTWORDS(A3) |
6 |
=COUNTWORDS(A4) |
9 |
=COUNTWORDS(A5) |
4 |
Визначте в диспетчері імен таке:
Ім’я: |
ThanksgivingDate |
Область: |
Книга |
Примітка: |
Повертає дату Дня подяки в США, що припадає на певний рік |
Посилається на: |
=LAMBDA(рік, ТЕКСТ(ДАТА(рік, 11, ВИБРАТИ(ДЕНЬ_ТИЖНЯ(ДАТА(рік, 11, 1)), 26, 25, 24, 23, 22, 28, 27)), "mm/dd/yyyy")) |
Скопіюйте дані з наведеної нижче таблиці та вставте їх у клітинку A1 нового аркуша Excel. За потреби можна змінити ширину стовпців, щоб відобразити всі дані.
Дані |
|
2020 |
|
2021 |
|
2022 |
|
2023 |
|
2024 |
|
Формула |
Результат |
=THANKSGIVINGDATE(A2) |
11/26/2020 |
=THANKSGIVINGDATE(A3) |
11/25/2021 |
=THANKSGIVINGDATE(A4) |
11/24/2022 |
=THANKSGIVINGDATE(A5) |
11/23/2023 |
=THANKSGIVINGDATE(A6) |
11/28/2024 |
Потрібна додаткова довідка?
Ви завжди можете поставити запитання експерту в спільноті Tech у розділі Excel чи отримати підтримку в спільнотах.