Ve spolupráci se SEDUO jsem vytvořil několik videokurzů:
Funkce LAMBDA pro tvorbu vlastních funkci aniž je potřeba znát VBA.
Tato funkce je zatím 12/2020 k dispozici v Insider verzi Excel (a už o ní začal psát Microsoft tak není tajná ;) ).
V tomto článku se na tuto funkci podíváme prakticky. Od teorie, přes vytvoření vlastní funkce definovaným názvem, přes praktické ukázky, chyby atd.
Samozřejmě tvorba vlastních (UDF) funkcí využitím VBA stále funguje a umí z mého pohledu pro mnoho činnosti nenahraditelná, zatím nevím jak udělat nepoviný argument, jak vlastní funkci dodat popis argumentů atd.
Funkce LAMBDA slouží k vytvoření vlastní funkce bez použití VBA (programování). Stačí ji vložit do definovaného názvu (pojmenované oblasti). Tímto eliminujeme u složitějších funkcí problémy s jejich vnořováním a vkláídaní vzorců se zpřehlední.
Bohužel musíte mít k dispozici popis této funkce, ať se ví jaké má parametry (zatím při vkládaní nevím jak, doplnit o nějakou nápovědu - navíc i Microsoft zatím mlčí).
Syntaxe funkce je mírně jiná než klasická funkce, protože se nezadává přímo do buňky, ale do Definovaného názvu a přidává se ji název, který následně v listu použijete. Syntaxe funkce je:
=LAMBDA(x;y;x+y)
Popis:
Poznámka parametru může být daleko více (až 253), případně jeden, nebo žádný a mít funkci jako konstantu:
' Pro jeden parametr
=LAMBDA(x;x+konktatna)
' Jako konstanta
=LAMBDA(x;konktatna)
=LAMBDA(x;y;z;x+y+z+konstanta)
Podobně jako u UDF se podíváme na funkci která nám vypočte plochu obdélníku. Kdy víme že výpočet je délka * výška
Funkci se můžeme pojmenovat Plocha
=LAMBDA(delka;sirka;delka*sirka)
Pozor funkci musíte zadat do Definovaného názvu z pásu karet Vzorce > Definovat název a vyplníte:
Klikem na OK máte hotovo.
Funkci máte a teď jak s funkci pracovat? Pozor máte funkci která se jmenuje Plocha, funkce LAMBDA je jen prostředek jak vaši funkci vytvořit. Stačí zapsat:
=Plocha(10;20)
A Excel vám vypočte 200. Neboli když funkci zadáváte, můžete se odkazovat i na buňky:
=Plocha(B4;C4)
Jak funkci zadat? Začnete psát vaš název "=Ploch(" funkce u nás Plocha. Objeví se definovaný název. Pozor musíte zadat za názvem funkci závorku a doplnit jednotlivé parametry, uzavřít závorku. Neboli zapíšete:
=Plocha(B4;C4)
Jak zadat funkci do listu bez použití definovaného názvu? Proměné vložíte do zavorek za funkci
=LAMBDA(delka;sirka;delka*sirka)(10;20)
nebo s odkazem na buňky
=LAMBDA(delka;sirka;delka*sirka)(B7;C7)
V této sekci se podíváme na nějaké praktické funkce, které lze využít a natrénovat použití.
Výpočet kvadru
=LAMBDA(x;y;z;x*y*z)
Nebo lépe ať je to ve funkci přehlednější
=LAMBDA(x;y;z;x*y*z)
Pokud chcete získat teplotu ve stupních z Fahrenheita :
=LAMBDA(teplota; (teplota-32)/1,8)
Při práci s funkci LAMBDA mohou vznikat chyby. Pokud pominu, že funkci LAMBDA zadáte chybně, následně při práci s vaší vlastní funkci může dojít k chybám:
Jak s názvy funkci? Za mně tvořím funkce první písmeno velké a další malé, ale klidně můžete psát všechna písmena velká.
Na názvech parametru nezáleží, klidně pro zkrácení lze použít x,y,z ale lépe delka, sirka, hloubka, já zadávam bez háčku a čárek.
Pokud chcete tvořit vlastní funkce využitím VBA:
Soubor ke stažení zdarma je v přípravě. Podpořit zveřejnění můžete podporou na Patreon.
Narazili jste na nějaké problémy, máte tip, můžete se zmínit v komentářích.
Článek byl aktualizován: 07.02.2021 12:59
Ušetřil vám tento web čas, peníze? Pomohl vyřešit problém? Jste ochotni poskytnout symbolickou odměnu na další rozvoj? Vybrte si formu odměny, která vám vyhovuje.
Microsoft Office (Word, Excel, Google tabulky, PowerPoint) se věnuji od roku 2000 (od 2004 na této doméně) - V roce 2017 jsem od Microsoft získal prestižní ocenění MVP (zatím jsem jediný z ČR v kategorií Excel). Své vědomosti a zkušenosti dávám k dispozici i on-line ve videích pro SEDUO. Ve firmách školím a konzultuji, učím na MUNI. Tento web již tvořím přes 15 let. Zdarma je zde přes 1.000 návodu, tipů a triků, včetně přes 250 různých šablon, sešitů.
Můžete být prvními co zanechají smysluplný komentář.
Pomohl Vám návod? Sdílejte na Facebooku, G+ |
||
LinkedIn... |
Stránky o MS Office (Excel) produktu společnosti Microsoft. Neslouží jako technická podpora.
| Email na autora: pavel.lasak@gmail.com | Copyright © : Pavel Lasák 2004 - 2024 |