Pomocí funkce LAMBDA můžete vytvářet vlastní opakovaně použitelné funkce a volat je pomocí popisného názvu. Nová funkce je dostupná v celém sešitu a volá se jako nativní funkce aplikace Excel.

Můžete vytvořit funkci pro běžně používaný vzorec, eliminovat nutnost kopírovat a vkládat tento vzorec (který může být náchylný k chybám) a efektivně přidávat vlastní funkce do nativní knihovny funkcí aplikace Excel. Funkce LAMBDA navíc nevyžaduje VBA, makra ani JavaScript, takže ji mohou využívat i neprogramátoři. 

Jak funguje funkce LAMBDA

Syntaxe

=LAMBDA([parametr1; parametr2; …,] výpočet)    

Argument

Popis

parametr

Hodnota, kterou chcete funkci předat, například odkaz na buňku, řetězec nebo číslo. Můžete zadat až 253 parametrů. Tento argument je volitelný.

výpočet

Vzorec, který chcete vykonat a vrátit jako výsledek funkce. Musí se jednat o poslední argument a musí vracet výsledek. Tento argument je povinný.

Poznámky

  • Názvy a parametry funkce Lambda se řídí pravidly syntaxe aplikace Excel pro názvy s jednou výjimkou: nepoužívejte tečku (.) v názvu parametru. Další informace najdete v tématu Názvy ve vzorcích.

  • Při vytváření funkce LAMBDA dodržujte osvědčené postupy stejně jako u libovolného nativního vzorce aplikace Excel, jako je předání správného počtu a typu argumentů, párování ¨levých a pravých závorek a zadávání čísel jako neformátovaných. Když použijete příkaz Evaluate, aplikace Excel okamžitě vrátí výsledek funkce LAMBDA a nemůžete ji vnitřně krokovat. Další informace najdete v tématu Zjišťování chyb ve vzorcích.

Chyby

  • Pokud zadáte více než 253 parametrů, aplikace Excel vrátí #HODNOTA! .

  • Pokud je funkci LAMBDA předán nesprávný počet argumentů, aplikace Excel vrátí #HODNOTA! .

  • Pokud voláte funkci LAMBDA rekurzivně a volání je cyklické, aplikace Excel může vrátit #ČÍS! chybu, pokud existuje příliš mnoho rekurzivních volání.

  • Pokud v buňce vytvoříte funkci LAMBDA, aniž byste ji také volali z buňky, aplikace Excel vrátí #VÝP! .

Vytvoření funkce LAMBDA

Tady je podrobný postup, který vám pomůže zajistit, aby funkce Lambda fungovala tak, jak jste zamýšleli, a velmi se podobala chování nativní funkce aplikace Excel.

Ujistěte se, že vzorec, který používáte v argumentu výpočtu, funguje správně. To je důležité, protože při vytváření funkce LAMBDA chcete zajistit, aby vzorec fungoval, a můžete to znemožnit, pokud dojde k chybám nebo neočekávanému chování. Další informace najdete v tématech Přehled vzorců v aplikaci Excel a Vytvoření jednoduchého vzorce v aplikaci Excel.

Osvědčeným postupem je vytvořit a otestovat funkci LAMBDA v buňce, abyste měli jistotu, že funguje správně, včetně definice a předávání parametrů. Abyste se vyhnuli chybě #ČÍS! chybě, přidejte volání funkce LAMBDA, které okamžitě vrátí výsledek:

=Funkce LAMBDA ([parametr1, parametr2, ...],výpočet) (volání funkce)

Následující příklad vrátí hodnotu 2.=LAMBDA(number, number + 1)(1)

Jakmile dokončíte funkci LAMBDA, přesuňte ji do Správce názvů ke konečné definici. Tímto způsobem dáte funkci LAMBDA smysluplný název, zajistíte popis a umožníte její opětovné použití z libovolné buňky v sešitu. Funkci LAMBDA můžete také spravovat tak, jak je to možné u libovolného názvu, například řetězcové konstanty, oblasti buněk nebo tabulky.

Postup

  1. Udělejte jednu z těchto věcí:

    • V aplikaci Excel pro Windows vyberte Vzorce > Správce názvů.

    • V aplikaci Excel pro Mac vyberte Vzorce > Definovat název.

  2. Vyberte Nový a potom zadejte informace do dialogového okna Nový název  

    Jméno:

    Zadejte název funkce LAMBDA.

    Obor:

    Sešit je výchozí možnost. K dispozici jsou také jednotlivé listy.

    Komentář:

    Volitelný, ale důrazně jej doporučujeme. Zadejte až 255 znaků. Stručně popište účel funkce a správný počet a typ argumentů.

    Zobrazí se v dialogovém okně Vložit funkci a jako popis (spolu s argumentem Výpočet), když zadáte vzorec a použijete Automatického dokončování vzorců (označované také jako Intellisense).

    Odkazovaná položka:

    Zadejte funkci LAMBDA. 

    Například:Definování funkce LAMBDA ve Správci názvů

  3. Pokud chcete vytvořit funkci LAMBDA, vyberte OK.

  4. Pokud chcete zavřít dialogové okno Správce názvů, vyberte Zavřít.

Další informace najdete v tématu Použití Správce názvů.

Příklady

Ve Správci názvů definujte následující:

Jméno:

ToCelsius

Obor:

Sešit

Komentář:

Převod teploty ve stupních Fahrenheita na teplotu ve stupních Celsia

Odkazovaná položka:

=LAMBDA(temp, (5/9) * (Temp-32))

Zkopírujte vzorová data v následující tabulce a vložte je do buňky A1 nového excelového sešitu. Pokud potřebujete, můžete přizpůsobit šířky sloupců a zobrazit si všechna data.

Data

104

86

68

50

32

Vzorec

Výsledek

=TOCELSIUS(A2)

40

=TOCELSIUS(A3)

30

=TOCELSIUS(A4)

20

=TOCELSIUS(A5)

10

=TOCELSIUS(A6)

0

Ve Správci názvů definujte následující:

Jméno:

Hypotenuse

Obor:

Sešit

Komentář:

Vrátí délku přepony pravoúhlého trojúhelníku

Odkazovaná položka:

=LAMBDA(a, b, SQRT((a^2+b^2)))

Zkopírujte vzorová data v následující tabulce a vložte je do buňky A1 nového excelového sešitu. Pokud potřebujete, můžete přizpůsobit šířky sloupců a zobrazit si všechna data.

Data

3

4

5

12

7

24

9

40

Vzorec

Výsledek

=HYPOTENUSE(A2,B2)

5

=HYPOTENUSE(A3,B3)

13

=HYPOTENUSE(A4,B4)

25

=HYPOTENUSE(A5,B5)

41

Ve Správci názvů definujte následující:

Jméno:

CountWords

Obor:

Sešit

Komentář:

Vrátí počet slov v textovém řetězci

Odkazovaná položka:

=LAMBDA(text, LEN(TRIM(text)) - LEN(SUBSTITUTE(TRIM(text), " ", "")) + 1)

Zkopírujte vzorová data v následující tabulce a vložte je do buňky A1 nového excelového sešitu. Pokud potřebujete, můžete přizpůsobit šířky sloupců a zobrazit si všechna data.

Data

Něco zlého tímto způsobem přichází.

Přišel jsem, viděl jsem, zvítězil jsem.

Příliš žluťoučký kůň úpěl ďábelské ódy.

Použij Sílu, Luku!

Vzorec

Výsledek

=COUNTWORDS(A2)

5

=COUNTWORDS(A3)

6

=COUNTWORDS(A4)

9

=COUNTWORDS(A5)

4

Ve Správci názvů definujte následující:

Jméno:

DenDíkůvzdání

Obor:

Sešit

Komentář:

Vrátí datum, na které v USA připadá Den díkůvzdání pro daný rok

Odkazovaná položka:

=LAMBDA(rok, TEXT(DATUM(rok, 11, VYBRAT(VŠEDNÍ DEN(DATUM(rok, 11, 1)), 26, 25, 24, 23, 22, 28, 27)), "mm/dd/rrrr"))

Zkopírujte vzorová data v následující tabulce a vložte je do buňky A1 nového excelového sešitu. Pokud potřebujete, můžete přizpůsobit šířky sloupců a zobrazit si všechna data.

Data

2020

2021

2022

2023

2024

Vzorec

Výsledek

=DENDÍKŮVZDÁNÍ(A2)

26. 11. 2020

=DENDÍKŮVZDÁNÍ(A3)

25. 11. 2021

=DENDÍKŮVZDÁNÍ(A4)

24. 11. 2022

=DENDÍKŮVZDÁNÍ(A5)

23. 11. 2023

=DENDÍKŮVZDÁNÍ(A6)

28. 11. 2024

Potřebujete další pomoc?

Kdykoli se můžete zeptat odborníka z komunity Excel Tech nebo získat podporu v komunitách.

Viz také

Funkce LET

Vytváření vlastních funkcí v aplikaci Excel

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.