Die Excel-Funktion, die ich dir heute vorstellen möchte, habe ich lange Zeit ganz bewusst ignoriert.
Microsoft hat mit Excel 2021 erstmalig die LET-Funktion eingeführt und mein erster Gedanke dazu war: Oh Mann, wer braucht denn so etwas?
Aber damit tut man dieser Funktion schon ein bisschen Unrecht.
Was also hinter der ominösen LET-Funktion steckt, wofür man sie brauchen kann, wo ihre Vor- und Nachteile liegen, das habe ich in diesem Artikel beschrieben.
Und los geht’s!

Beispieldatei herunterladen
Drei grundsätzliche Funktionskategorien
Es gibt aus meiner Sicht 3 grundsätzliche Kategorien, in die sich Excel-Funktionen einteilen lassen:
- Die Klassiker. Also „richtige“ Excel-Funktionen, mit denen man als Anwender groß geworden ist: SUMME, SVERWEIS, WENN, ANZHL, MIN, MAX und viele mehr
- Die Modernen. Funktionen, die man nach der Einführung sofort ins Herz geschlossen hat. Dazu gehören der XVERWEIS oder die dynamischen Array-Funktionen, wie FILTER, SORTIEREN und EINDEUTIG
- Die Nischen-/Hardcore-/Freak-Funktionen. Dazu gehört beispielsweise LAMBDA oder eben auch die LET-Funktion
Ja, das sind sehr subjektive, vereinfachende und keinesfalls allgemeingültige Kategorien. Aber ich denke, du verstehst, was ich meine.
Und ja, viele Menschen werden mich vermutlich als Hardcore-Anwender oder Freak bezeichnen, was Excel angeht. Warum also meine bisherige Ignoranz von LET? Das wirst du gleich sehen…
Die LET-Funktion
Falls du noch Excel 2019 oder 2016 im Einsatz hast, kannst du hier aufhören zu lesen. Denn die Funktion existiert erst ab Excel 2021 und in Microsoft 365.
„Die LET-Funktion weist den Berechnungsergebnissen Namen zu. Auf diese Weise können Zwischenberechnungen, Werte oder definierte Namen innerhalb einer Formel gespeichert werden. Diese Namen gelten nur im Rahmen der LET-Funktion. Ähnlich wie Variablen bei der Programmierung wird LET durch die native Formelsyntax von Excel erreicht.“
So steht’s in den Hilfetexten zu dieser Funktion.
Der Sinn dieser Funktion liegt darin, durch die Vergabe von Namen eine Formel besser verständlich zu machen und Mehrfachberechnungen innerhalb einer Formel zu vermeiden.
Die Syntax ist an sich auch recht einfach:
=LET(Name1;Wert1;[Name2;Wert2;...];Berechnung)
Man hat also ein oder mehrere Pärchen, bestehend aus einem Namen und einem zugewiesenen Wert.
Der zugewiesen Wert kann entweder ein fixer Wert (Zahl, Text etc.), ein Zellenbezug oder auch eine Formel sein. Es können bis zu maximal 126(!) solcher Pärchen definiert werden.
Das letzte Argument muss immer eine Berechnung sein. Das Ergebnis dieser Berechnung ist dann das, was die LET-Funktion am Ende zurückliefert.
Wie sieht das in der Praxis aus?
Beispiel: Staffelpreise
Im ersten Beispiel soll ein Staffelpreis abhängig von der Bestellmenge berechnet werden. Der reguläre Listenpreis steht in Zelle E1 und für den Staffelpreis soll folgende Regel gelten:
- Wenn Bestellmenge > 100, dann 5 % Rabatt auf Listenpreis
- Wenn Bestellmenge > 150, dann 10 % Rabatt auf Listenpreis
- Wenn Bestellmenge > 200, dann 15 % Rabatt auf Listenpreis
In einer normalen Formellösung würde man mit verschachtelte WENN-Funktionen arbeiten:
=WENN(SUMME(B4:B16)>200;$E$1*0,85;WENN(SUMME(B4:B16)>150;$E$1*0,9;WENN(SUMME(B4:B16)>100;$E$1*0,95;E1)))
Was bei dieser Lösung auffällt:
Die Summenformel taucht in dieser Formel insgesamt 3x auf und muss je nach konkretem Ergebnis auch bis zu 3x berechnet werden.
Und wenn sich der Summenbereich ändert, muss dies auch an 3 Stellen in der Formel geändert werden. Das gilt auch für den Bezug zum Listenpreis.
Und genau das wäre ein Einsatzfall für die LET-Funktion.
=LET(
Menge;SUMME(B4:B16);
Listenpreis;$E$1;
WENN(Menge>200;Listenpreis*0,85;WENN(Menge>150;Listenpreis*0,9;WENN(Menge>100;Listenpreis*0,95;Listenpreis))))
Hier werden zunächst 2 Namen definiert (Menge und Listenpreis) und diesen Namen ein Wert zugeordnet. Im Fall der Menge ist das die Summe über den Bereich B4:B16, für den Listenpreis wird auf Zelle E1 verwiesen.
Das ist im Grunde nichts anderes, wie wenn man über den Namensmanager einen Namen für einen Zellbereich definiert. Der Unterschied ist, dass die Namen hier nur innerhalb dieser LET-Funktion existieren.
Die eigentliche WENN-Funktion ist vom Aufbau her identisch mit der Variante ohne LET. Der Unterschied jedoch ist, dass darin nur noch auf die zuvor definierten Namen verwiesen wird. Das heißt, die Summenberechnung findet genau ein einziges Mal statt und das Ergebnis wird dann im Namen „Menge“ gespeichert. In der WENN-Funktion wird dann nur noch auf diesen gespeicherten Wert zurückgegriffen.
Sollte sich später der Summenbereich erweitern, muss dies in der LET-Formel nur noch ein einer Stelle gemacht werden.
Ja, im direkten Vergleich ist die Variante mit der LET-Funktion deutlich länger und sieht auf den ersten Blick auch unübersichtlicher aus. Die Lesbarkeit lässt sich jedoch verbessern, indem man nach jedem Namenspärchen mit Alt+Eingabe manuelle Zeilenumbrüche einfügt.
Besonderheiten
Im vorhergehenden Beispiel habe ich als letztes Argument direkt die WENN-Formel angegeben. Denkbar wäre aber auch, dass diese WENN-Formel selbst einem Namen zugewiesen wird und erst dieser zusätzliche Name ausgegeben wird:
=LET(
Menge;SUMME(B4:B16);
Listenpreis;$E$1;
Berechnung;WENN(Menge>200;Listenpreis*0,85;WENN(Menge>150;Listenpreis*0,9;WENN(Menge>100;Listenpreis*0,95;Listenpreis)));
Berechnung
)
Wozu soll das gut sein?
Man gewinnt dadurch mehr Flexibilität. Der Punkt ist nämlich, dass man im letzten Argument nicht zwingend auch den letzten definierten Namen ausgeben muss.
Stattdessen könnte ich mir dort auch die Menge anzeigen lassen, um zum Beispiel das Ergebnis zu kontrollieren:
=LET(
Menge;SUMME(B4:B16);
Listenpreis;$E$1;
Berechnung;WENN(Menge>200;Listenpreis*0,85;WENN(Menge>150;Listenpreis*0,9;WENN(Menge>100;Listenpreis*0,95;Listenpreis)));
Menge
)
Auf diese Weise bleibt die Formel für den Namen „Berechnung“ unverändert erhalten und man kann am Ende einfach wieder die Namen austauschen.
LET und LAMBDA
Wenn man im Internet ein wenig herumsucht, werden einem oft die Funktionen LET und LAMBDA in Kombination unterkommen. Über LAMBDA hatte ich ja in diesem Artikel schon mal geschrieben. Und manchmal verwechselt man sie auch gerne. Daher hier nochmal die Unterscheidung:
Die LET-Funktion erlaubt es, innerhalb einer Formel Namen zu definieren und dadurch die Berechnungen besser zu strukturieren und zu vereinfachen.
Die LAMBDA-Funktion ist dazu da, um sich eigene Funktionen zu erstellen, die es so in Excel nicht gibt. Diese Funktion kann dann unter dem selbst gewählten Namen im Tabellenblatt verwendet werden, als wäre sie ein regulärer Bestandteil von Excel.
Solche eigenen Funktionen sind erfahrungsgemäß häufig etwas komplexer. Daher bietet es sich an, diese Komplexität mit Hilfe der LET-Funktion zu reduzieren und anschließend diese LET-Funktion innerhalb einer LAMBDA-Funktion zu verwenden. Damit schlägt man zwei Fliegen mit einer Klappe:
Die (komplexe) eigene Funktion ist besser zu pflegen UND sie lässt sich dank LAMBDA nun über einen selbst gewählten Namen wie eine reguläre Tabellenfunktion verwenden
Fazit
Die LET-Funktion ist sicherlich keine Funktion, die du ab jetzt täglich brauchen wirst.
Aber wie du gesehen hast, kann sie durchaus die Lesbarkeit und Pflege von komplexeren Formeln verbessern. Auch wenn zunächst alles vielleicht komplizierter aussieht (Letzteres war vermutlich auch der Grund, warum ich um diese Funktion lange Zeit einen großen Bogen gemacht habe…)
Wann solltest du also an LET denken?
Immer dann, wenn du in einer deiner Formeln feststellst, dass du den gleichen Zellenbezug oder die gleiche Berechnung mehrmals verwendest. Heiße Kandidaten sind also verschachtelte WENN-Funktionen.
Und vielleicht hast du dich auch schon mit der LAMBDA-Funktion angefreundet. Denn LET und LAMBDA sind ein gutes Team und treten oft gemeinsam auf.
Wie sieht es bei dir aus:
Hast du schon Kontakt zur LET-Funktion gehabt (oder sie, wie ich) bisher ignoriert? Lass es uns in den Kommentaren wissen!

P.S. Die Lösung ist immer einfach. Man muss sie nur finden.
(Alexander Solschenizyn)
P.P.S. Das Problem sitzt meistens vor dem Computer.







Danke für die Erinnerung; ich vergesse immer wieder, diese Funktion einzusetzen, aber jetzt sehe ich mal nach, wo ich damit Formeln ersetzen könnte. Einen kleinen Verbesserungsvorschlag hätte ich da noch: Die Rabattstufen könnte man doch auch noch in die Funktion integrieren: Rabatt1: $x$1 etc. Das Gleiche könnte man auch mit den Bestellmengen machen. M. E. wäre die Formel dann noch übersichtlicher, und Änderungen könnte man einfach auf dem Tabellenblatt vornehmen.
Hallo Christian,
stimmt, man kann die Formel natürlich noch weiter ausbauen und dadurch noch stärker flexibilisieren.
Schöne Grüße,
Martin
Hallo Martin,
vielen Dank für deinen wieder schönen Blogbeitrag.
Tatsächlich arbeite ich ganz gerne mit LET.
Leider muss man aber hier (wie im Artikel geschrieben) immer aufpassen, dass alle Benutzer der Datei auch ein brandaktuelles Excel benutzen. Da bin ich nämlich auch schon böse auf die Nase gefallen und hatte am Ende die doppelte Arbeit, weil ich alle Formeln wieder zurückbauen musste.
Hallo Jochen,
da sprichst du einen wichtigen Punkt an. Bei neuen Funktionen ist generell die Abwärtskompatibilität ein Punkt, den man nicht aus den Augen verlieren sollte, wenn man die Dateien weitergeben muss.
Schöne Grüße,
Martin
Ich bin fast 77 Jahre, aber ich habe mal die Wenn-Funktion anders gelernt und auch bis vor 15 Jahren gelehrt:
Wenn die erste Bedingung erfüllt ist, wird auch DIESE Anweisung ausgeführt!!
Wenn die Bestellmenge größer 100 ist, prüft die Funktion nicht mehr, ob mehr als 150 oder gar noch mehr bestellt wurde
Hier muss das Pferd von hinten aufgezäumt werden: Den größten Wert zuerst Abfragen.
Ich hoffe, meine Demenz ist noch nicht so weit fortgeschritten
Hallo Karl Heinz,
Schande über mich, du hast vollkommen recht (vermutlich schreitet bei mir die Demenz voran…). Die Reihenfolge muss natürlich genau andersherum sein. Ich habe den Artikel jetzt korrigiert.
Danke für den Hinweis und schöne Grüße,
Martin
Hallo Martin,
ich wollte die Osterformel von Gauß in eine Let-Funktion packen (siehe https://www.herber.de/excelformeln/pages/Ermittlung_des_Ostersonntags_und_aller_beweglichen_Feiertage.html), da streikt die Let-Funktion und setzt mir die Formeln in „“. Ist es tatsächlich so, dass Let keine Berechnungen als Werte akzeptiert?
Liebe Grüße
Alex