Met de LAMBDA()-functie in Excel kun je eigen formules maken. Je kunt elke berekening inkapselen, er een naam aan geven en die overal in je werkmap hergebruiken.
Dat betekent dat je niet steeds opnieuw dezelfde formule hoeft te kopiëren. Met LAMBDA() maak je je spreadsheets schoner en beter te onderhouden en, als je het mij vraagt, het is zelfs iets makkelijker dan VBA gebruiken.
Waarom Excel LAMBDA() gebruiken?
In de kern laat LAMBDA() je elke formule verpakken in een functie die je zelf definieert. Je geeft invoerparameters op (net als de argumenten in SUM() of VLOOKUP()) en roept je nieuwe functie vervolgens aan met die parameters wanneer je die nodig hebt. Dit is de structuur:
Je kunt met LAMBDA()-formules direct in een cel experimenteren, maar de echte kracht komt als je er een opslaat als een benoemde functie. Eenmaal benoemd, verschijnt je aangepaste functie in je werkmap net als SUM(), AVERAGE() en andere functies.
Hier zijn een paar overtuigende redenen om LAMBDA() in je workflow op te nemen:
Elimineer herhalende formules. In plaats van een complexe formule overal opnieuw te schrijven, maak je er een functie van en roep je die bij naam aan.
Maak je spreadsheets duidelijker. Benoemde functies zijn voor jou en je collega’s veel begrijpelijker dan een herhaalde, cryptische formule.
Combineer met andere nieuwe functies. LAMBDA() werkt goed samen met LET(), MAP(), REDUCE() en andere moderne Excel-functies.
Verminder fouten. Zodra je logica is getest en verpakt in een LAMBDA(), kun je die hergebruiken — geen typefouten meer door formules te kopiëren.
Hoe maak je een Excel LAMBDA()-functie
Zoals met alles vergt dit wat oefening. Dus laten we onze eigen LAMBDA()-functies maken.
Stel dat je de oppervlakte van een cirkel uit de straal berekent en steeds opnieuw =PI()*A1^2 intypt.
Probeer eerst een LAMBDA()-formule direct in een cel te bouwen en uit te voeren:
Hier hebben we een LAMBDA()-functie gemaakt die r als parameter accepteert en de oppervlakte van de cirkel teruggeeft. De (3) aan het einde levert de straal, dus deze formule berekent de oppervlakte voor een cirkel met straal 3.
Natuurlijk is elke keer de LAMBDA() uitschrijven maar een kleine verbetering ten opzichte van de oorspronkelijke formule. Maar blijf even bij me, want benoemde functies komen nu in beeld:
Ga naar Formules > Naambeheer > Nieuw.
Kies een naam voor je functie, bijvoorbeeld CircleArea.
Deze formule retourneert 7, de grootste van de twee invoeren.
Specifiekere Excel LAMBDA()-voorbeelden
Laten we blijven oefenen.
Excel LAMBDA() met meerdere parameters
Laten we nu werken met functies die meerdere inputs nemen. Net als daarvoor scheiden we onze parameters met komma’s en geven we hetzelfde aantal argumenten mee wanneer we de functie aanroepen.
Als je ooit de provisielogica moet aanpassen, hoef je alleen de LAMBDA() op één plek te updaten, en elke formule die Commission gebruikt past zich mee aan.
Recursie en geneste functies
LAMBDA() ondersteunt recursie, wat betekent dat een functie zichzelf kan aanroepen. Dat opent nieuwe ideeën, zoals aangepaste aggregaties.
Zo kun je bijvoorbeeld een recursieve faculteitsfunctie definiëren:
Je slaat dit op als een benoemde functie, en het werkt net als elke recursieve functie in programmeren. (Voor de naam zou ik iets expliciets kiezen, zoals Factorial.)
LAMBDA() met andere dynamische array-functies
LAMBDA() is te combineren met andere dynamische Excel-functies zoals LET(), MAP() en REDUCE().
LET() laat je variabelen toewijzen en hergebruiken binnen je formule, terwijl MAP() en REDUCE()LAMBDA() toepassen op arrays of lijsten.
Om bijvoorbeeld elke waarde in een bereik te verdubbelen:
Hier past MAP() je LAMBDA()-functie toe op elk item in A1:A5. Dit is erg handig voor batchberekeningen.
(De formule hierboven verdubbelt de overeenkomstige waarde in het bereik alleen als die groter is dan 10.)
(Een ander prettig punt is dat je de formule maar één keer hoeft te schrijven, in cel B1, en de cellen eronder automatisch worden ingevuld.)
Pro-tips met Excel LAMBDA()
Hier zijn wat tips uit de praktijk.
Test Excel LAMBDA()-functies voordat je ze een naam geeft
Voordat je je LAMBDA() benoemt en opslaat, is het slim om ’m direct in een cel te testen. Dat kan door je testargumenten tussen haakjes toe te voegen, net als bij het aanroepen van elke functie:
Dit levert 10 op, het resultaat dat we verwachtten.
Als je bij het testen vergeet een argument mee te geven, zoals alleen =LAMBDA(x, x*2) typen, laat Excel de functie zelf zien, niet een resultaat. Vergeet dus niet die laatste haakjes met je invoerwaarden toe te voegen.
Enkele kanttekeningen
Laten we even stilstaan bij de beperkingen:
LAMBDA()-functies hebben het bereik van de werkmap. Als je je aangepaste functies in een andere werkmap wilt gebruiken, moet je ze kopiëren of Excel’s nieuwe functie Benoemde functies gebruiken als die beschikbaar is.
Je kunt met LAMBDA() geen volatiele functies maken (zoals NOW() of RAND()).
Het verkeerde aantal argumenten opgeven bij het aanroepen van een LAMBDA() resulteert in een #VALUE!-fout, dus controleer je invoer altijd even.
Niet alle Excel-versies ondersteunen LAMBDA(). Je hebt Microsoft 365 of de nieuwste webversie nodig om deze functies te gebruiken.
LAMDA() en andere functies
Tot slot bekijken we LAMBDA() naast andere manieren van werken.
Wanneer gebruik je Excel LAMBDA()?
Als je alles samenvat, vraag je je misschien af: wanneer is LAMBDA() het juiste gereedschap? Pak LAMBDA() erbij wanneer:
Je complexe of herhalende formules wilt vereenvoudigen.
Er logica is die je een naam wilt geven en wilt toelichten.
Je aangepaste berekeningen of logica nodig hebt die Excel niet standaard biedt.
Naar mijn mening is LAMBDA() vooral nuttig voor teams, zeker als de functienamen expliciet zijn. Dan zien teamleden precies wat de logica doet zonder de hele berekening te hoeven uitpluizen.
Gerelateerde Excel-functies
Het helpt om bekend te zijn met andere nieuwe Excel-functies die LAMBDA() aanvullen. Hier zijn er een paar. Sommige noemde ik al.
LET(): Geef namen aan berekeningen binnen een formule
MAP(): Pas een LAMBDA() toe op elk item in een array
REDUCE(): Vouw een array terug naar één waarde met een LAMBDA()
BYROW(), BYCOL(): Pas een LAMBDA() per rij of kolom toe
Deze functies ontgrendelen, in combinatie met LAMBDA(), geavanceerdere logica en datatransformaties. Volg onze cursus Advanced Excel Functions om de echt nuttige functies te leren die Excel te bieden heeft.
Conclusie
Zoals we hebben gezien en geoefend, laat Excel LAMBDA() je eigen werkbladfuncties bouwen zonder ook maar aan VBA te komen. Gebruik LAMBDA() dus als je regelmatig dezelfde berekening op veel plekken uitschrijft, of als je ingewikkelde formules wilt temmen.
En onthoud dat je onze cursus Advanced Excel Functions kunt volgen om sneller en slimmer met Excel te werken. En als je financieel analist bent of er een wilt worden, volg dan ook onze cursus Financial Modeling in Excel. LAMDA()-functies gaan bijzonder nuttig zijn in de financiële wereld.
Auteur
Josef Waples
Ik ben een schrijver en editor op het gebied van data science en heb bijgedragen aan onderzoeksartikelen in wetenschappelijke tijdschriften. Ik ben vooral geïnteresseerd in lineaire algebra, statistiek, R en dergelijke. Ik speel ook best wat schaak!
Beheers Power Pivot in Excel om data te importeren, relaties te maken en DAX te gebruiken. Bouw dynamische dashboards om bruikbare inzichten te ontdekken.
Met de
LAMBDA()-functie in Excel kun je eigen formules maken. Je kunt elke berekening inkapselen, er een naam aan geven en die overal in je werkmap hergebruiken.Dat betekent dat je niet steeds opnieuw dezelfde formule hoeft te kopiëren. Met
LAMBDA()maak je je spreadsheets schoner en beter te onderhouden en, als je het mij vraagt, het is zelfs iets makkelijker dan VBA gebruiken.Waarom Excel LAMBDA() gebruiken?
In de kern laat
LAMBDA()je elke formule verpakken in een functie die je zelf definieert. Je geeft invoerparameters op (net als de argumenten in SUM() ofVLOOKUP()) en roept je nieuwe functie vervolgens aan met die parameters wanneer je die nodig hebt. Dit is de structuur:Je kunt met
LAMBDA()-formules direct in een cel experimenteren, maar de echte kracht komt als je er een opslaat als een benoemde functie. Eenmaal benoemd, verschijnt je aangepaste functie in je werkmap net alsSUM(),AVERAGE()en andere functies.Hier zijn een paar overtuigende redenen om
LAMBDA()in je workflow op te nemen:Elimineer herhalende formules. In plaats van een complexe formule overal opnieuw te schrijven, maak je er een functie van en roep je die bij naam aan.
Maak je spreadsheets duidelijker. Benoemde functies zijn voor jou en je collega’s veel begrijpelijker dan een herhaalde, cryptische formule.
Combineer met andere nieuwe functies.
LAMBDA()werkt goed samen metLET(),MAP(),REDUCE()en andere moderne Excel-functies.Verminder fouten. Zodra je logica is getest en verpakt in een
LAMBDA(), kun je die hergebruiken — geen typefouten meer door formules te kopiëren.Hoe maak je een Excel LAMBDA()-functie
Zoals met alles vergt dit wat oefening. Dus laten we onze eigen
LAMBDA()-functies maken.Stel dat je de oppervlakte van een cirkel uit de straal berekent en steeds opnieuw
=PI()*A1^2intypt.Probeer eerst een
LAMBDA()-formule direct in een cel te bouwen en uit te voeren:Hier hebben we een
LAMBDA()-functie gemaakt dierals parameter accepteert en de oppervlakte van de cirkel teruggeeft. De (3) aan het einde levert de straal, dus deze formule berekent de oppervlakte voor een cirkel met straal 3.Natuurlijk is elke keer de
LAMBDA()uitschrijven maar een kleine verbetering ten opzichte van de oorspronkelijke formule. Maar blijf even bij me, want benoemde functies komen nu in beeld:Ga naar Formules > Naambeheer > Nieuw.
Kies een naam voor je functie, bijvoorbeeld
CircleArea.Voer in het vak Verwijst naar het volgende in:
Nu kun je je aangepaste functie in je hele werkmap gebruiken:
Je hebt nu een herbruikbare, aangepaste functie gemaakt.
Excel LAMBDA()-syntaxis en parameters
LAMBDA()kan elk aantal parameters accepteren (tot Excel’s limiet van 253), elk gescheiden door een komma. (Alsof je er ooit zoveel zou gebruiken.)Belangrijk is dat het laatste argument altijd de berekening zelf is, die elke door jou gedefinieerde parameter kan gebruiken.
Als je bijvoorbeeld een functie wilt maken die het grootste van twee getallen teruggeeft, kun je schrijven:
Na dit als benoemde functie te hebben opgeslagen —
MaxOfTwois een goede naam — gebruik je het net als elke andere Excel-functie:Deze formule retourneert
7, de grootste van de twee invoeren.Specifiekere Excel LAMBDA()-voorbeelden
Laten we blijven oefenen.
Excel LAMBDA() met meerdere parameters
Laten we nu werken met functies die meerdere inputs nemen. Net als daarvoor scheiden we onze parameters met komma’s en geven we hetzelfde aantal argumenten mee wanneer we de functie aanroepen.
Om twee getallen op te tellen:
Dit retourneert
13.Als je besluit hier een benoemde functie van te maken,
AddTwogenaamd, kun je die overal in je werkmap zo gebruiken:Je hebt nu een aangepaste optelfunctie.
Ruim herhalende logica op
Stel dat je provisies berekent met deze formule op meerdere plekken:
In plaats van deze formule overal te kopiëren waar je hem nodig hebt, kun je de logica inkapselen met
LAMBDA():Geef deze functie de naam
Commission, en je kunt nu gebruiken:Als je ooit de provisielogica moet aanpassen, hoef je alleen de
LAMBDA()op één plek te updaten, en elke formule dieCommissiongebruikt past zich mee aan.Recursie en geneste functies
LAMBDA()ondersteunt recursie, wat betekent dat een functie zichzelf kan aanroepen. Dat opent nieuwe ideeën, zoals aangepaste aggregaties.Zo kun je bijvoorbeeld een recursieve faculteitsfunctie definiëren:
Je slaat dit op als een benoemde functie, en het werkt net als elke recursieve functie in programmeren. (Voor de naam zou ik iets expliciets kiezen, zoals
Factorial.)LAMBDA() met andere dynamische array-functies
LAMBDA()is te combineren met andere dynamische Excel-functies zoalsLET(),MAP()enREDUCE().LET()laat je variabelen toewijzen en hergebruiken binnen je formule, terwijlMAP()enREDUCE()LAMBDA()toepassen op arrays of lijsten.Om bijvoorbeeld elke waarde in een bereik te verdubbelen:
Hier past
MAP()jeLAMBDA()-functie toe op elk item inA1:A5. Dit is erg handig voor batchberekeningen.(De formule hierboven verdubbelt de overeenkomstige waarde in het bereik alleen als die groter is dan 10.)
(Een ander prettig punt is dat je de formule maar één keer hoeft te schrijven, in cel B1, en de cellen eronder automatisch worden ingevuld.)
Pro-tips met Excel LAMBDA()
Hier zijn wat tips uit de praktijk.
Test Excel LAMBDA()-functies voordat je ze een naam geeft
Voordat je je
LAMBDA()benoemt en opslaat, is het slim om ’m direct in een cel te testen. Dat kan door je testargumenten tussen haakjes toe te voegen, net als bij het aanroepen van elke functie:Dit levert
10op, het resultaat dat we verwachtten.Als je bij het testen vergeet een argument mee te geven, zoals alleen
=LAMBDA(x, x*2)typen, laat Excel de functie zelf zien, niet een resultaat. Vergeet dus niet die laatste haakjes met je invoerwaarden toe te voegen.Enkele kanttekeningen
Laten we even stilstaan bij de beperkingen:
LAMBDA()-functies hebben het bereik van de werkmap. Als je je aangepaste functies in een andere werkmap wilt gebruiken, moet je ze kopiëren of Excel’s nieuwe functie Benoemde functies gebruiken als die beschikbaar is.Je kunt met
LAMBDA()geen volatiele functies maken (zoalsNOW()ofRAND()).Het verkeerde aantal argumenten opgeven bij het aanroepen van een
LAMBDA()resulteert in een#VALUE!-fout, dus controleer je invoer altijd even.Niet alle Excel-versies ondersteunen
LAMBDA(). Je hebt Microsoft 365 of de nieuwste webversie nodig om deze functies te gebruiken.LAMDA() en andere functies
Tot slot bekijken we
LAMBDA()naast andere manieren van werken.Wanneer gebruik je Excel LAMBDA()?
Als je alles samenvat, vraag je je misschien af: wanneer is
LAMBDA()het juiste gereedschap? PakLAMBDA()erbij wanneer:Naar mijn mening is
LAMBDA()vooral nuttig voor teams, zeker als de functienamen expliciet zijn. Dan zien teamleden precies wat de logica doet zonder de hele berekening te hoeven uitpluizen.Gerelateerde Excel-functies
Het helpt om bekend te zijn met andere nieuwe Excel-functies die
LAMBDA()aanvullen. Hier zijn er een paar. Sommige noemde ik al.LET(): Geef namen aan berekeningen binnen een formuleMAP(): Pas eenLAMBDA()toe op elk item in een arrayREDUCE(): Vouw een array terug naar één waarde met eenLAMBDA()BYROW(),BYCOL(): Pas eenLAMBDA()per rij of kolom toeDeze functies ontgrendelen, in combinatie met
LAMBDA(), geavanceerdere logica en datatransformaties. Volg onze cursus Advanced Excel Functions om de echt nuttige functies te leren die Excel te bieden heeft.Conclusie
Zoals we hebben gezien en geoefend, laat Excel
LAMBDA()je eigen werkbladfuncties bouwen zonder ook maar aan VBA te komen. GebruikLAMBDA()dus als je regelmatig dezelfde berekening op veel plekken uitschrijft, of als je ingewikkelde formules wilt temmen.En onthoud dat je onze cursus Advanced Excel Functions kunt volgen om sneller en slimmer met Excel te werken. En als je financieel analist bent of er een wilt worden, volg dan ook onze cursus Financial Modeling in Excel. LAMDA()-functies gaan bijzonder nuttig zijn in de financiële wereld.