Przejdź do treści
Powrót do Centrum Pomocy
Office 2024
Aplikacje Microsoft

Funkcja LET w Excelu — kompletny przewodnik 2026

W tym przewodniku poznasz pełną składnię funkcji LET, praktyczne przykłady zastosowania, zasady zagnieżdżania zmiennych, porównanie z alternatywami (kolumny pom

11 min czytania·Zaktualizowano dzisiaj
Faktura VAT 23% + KSeFDostawa 1-3 min e-mailemGwarancja działania klucza5,0 / 5,0(KluczeSoft)

Funkcja LET to jedno z najważniejszych ulepszeń formuł Excela, wprowadzone na stałe w Microsoft 365 (dawniej Office 365) od 2020 roku. Umożliwia definiowanie nazwanych zmiennych i wyrażeń obliczeniowych wewnątrz pojedynczej formuły, co radykalnie upraszcza skomplikowane formuły, przyspiesza obliczenia i eliminuje konieczność wielokrotnego powtarzania tych samych fragmentów kodu. Dla każdego, kto regularnie pracuje z zagnieżdżonymi JEŻELI, WYSZUKAJ.PIONOWO, X.WYSZUKAJ czy formułami tablicowymi, LET jest narzędziem zmieniającym codzienną pracę z arkuszami.

W tym przewodniku poznasz pełną składnię funkcji LET, praktyczne przykłady zastosowania, zasady zagnieżdżania zmiennych, porównanie z alternatywami (kolumny pomocnicze, LAMBDA, Power Query) oraz najczęstsze pułapki. Wszystkie przykłady są zgodne z Excel Microsoft 365 w wersji na rok 2026 i Windows 11 24H2.

Czym jest funkcja LET — definicja i składnia

LET przypisuje nazwy do wyników obliczeń, a następnie używa tych nazw w końcowym wyrażeniu formuły. W praktyce działa to jak tworzenie tymczasowych zmiennych wewnątrz formuły — bez modyfikowania arkusza, bez kolumn pomocniczych i bez VBA.

Składnia:

=LET(nazwa1; wartość1; [nazwa2; wartość2; ...]; obliczenie)

Każdy argument:

  • nazwa1 — identyfikator zmiennej (musi zaczynać się od litery, nie może być odwołaniem do komórki ani zarezerwowaną nazwą typu PRAWDA, FAŁSZ, C1)
  • wartość1 — wyrażenie, którego wynik zostanie przypisany do nazwy (może być stałą, odwołaniem, formułą, zakresem)
  • nazwa2, wartość2... — opcjonalnie kolejne pary nazwa-wartość (można zdefiniować do 126 zmiennych)
  • obliczenie — końcowe wyrażenie, które wykorzystuje zdefiniowane zmienne i zwraca wynik formuły

Kluczowa zasada działania: każda zmienna jest obliczana raz, a następnie jej wartość jest wielokrotnie używana w końcowym wyrażeniu bez ponownego przeliczania. To właśnie daje oszczędność czasu przy dużych arkuszach.

Minimalny przykład

Zamiast dwukrotnego wywołania FILTRUJ:

=JEŻELI(ILE.NIEPUSTYCH(FILTRUJ(A2:A100; B2:B100="Tak"))>0; ŚREDNIA(FILTRUJ(A2:A100; B2:B100="Tak")); "Brak danych")

Z LET — jedno wywołanie FILTRUJ, wynik zapamiętany:

=LET(f; FILTRUJ(A2:A100; B2:B100="Tak"); JEŻELI(ILE.NIEPUSTYCH(f)>0; ŚREDNIA(f); "Brak danych"))

Różnica: pierwsza formuła wykonuje FILTRUJ dwukrotnie (i przegląda 100 wierszy × 2 = 200 operacji), druga — tylko raz. Przy setkach tysięcy wierszy oszczędność wydajnościowa jest odczuwalna natychmiast.

Dlaczego LET jest przełomem — korzyści

Wydajność obliczeń

To najważniejsza korzyść. Każda zmienna zdefiniowana przez LET jest obliczana dokładnie jeden raz. Bez LET Excel wielokrotnie przelicza te same podwyrażenia za każdym razem, gdy pojawiają się w formule. W arkuszach z dziesiątkami tysięcy formuł i odwołaniami do całych kolumn (A:A) daje to kilkusekundowe, a czasem kilkunastosekundowe różnice w czasie przeliczania skoroszytu.

Czytelność formuł

Formuła, która przetwarza surowe dane z arkusza, filtruje je, następnie grupuje i oblicza średnią ważoną, może rozrosnąć się do 400–600 znaków nieczytelnego kodu. LET pozwala rozbić ją na nazwane etapy — każdy z czytelną nazwą opisującą, co reprezentuje — po czym wywołać końcowe obliczenie. Debugowanie takiej formuły jest trywialne: wystarczy tymczasowo zmienić końcowe wyrażenie na nazwę zmiennej pośredniej, by zobaczyć jej wynik.

Eliminacja kolumn pomocniczych

Wiele arkuszy zawiera kolumny H, I, J z wyliczeniami pośrednimi tylko po to, by formuła w kolumnie K mogła się do nich odwołać. LET pozwala przenieść te wyliczenia do wnętrza formuły, redukując bałagan w arkuszu i ryzyko przypadkowego nadpisania komórek pomocniczych.

Łatwiejsze utrzymanie

Gdy zmienia się logika biznesowa (np. próg rabatu czy stawka VAT), w arkuszu bez LET trzeba ją poprawić w kilkunastu miejscach. Z LET — definiujesz stałą lub wyrażenie na początku formuły i używasz jej we wszystkich dalszych obliczeniach. Jedna zmiana, jedno miejsce.

Składnia zaawansowana — zagnieżdżanie, zakresy, pułapki

Zasięg zmiennych (scope) i kolejność

Zmienne w LET są definiowane sekwencyjnie — każda kolejna para nazwa-wartość ma dostęp do wszystkich wcześniej zdefiniowanych zmiennych. To umożliwia budowanie zagnieżdżonych struktur obliczeniowych:

=LET(
    przychod; SUMA(C2:C1000);
    koszt; SUMA(D2:D1000);
    marza; przychod - koszt;
    marza_procent; marza / przychod;
    JEŻELI(przychod=0; "Brak danych"; marza_procent)
)

To nie jest tylko kwestia estetyki — zmienne stanowią czytelny pipeline przetwarzania danych, gdzie każdy krok jawnie zależy od poprzedniego.

Ograniczenie nazw zmiennych

  • Nie mogą być odwołaniami do komórek (A1, XFD1048576)
  • Nie mogą kolidować z nazwami funkcji (JEŻELI, SUMA, LET) ani stałymi (PRAWDA)
  • Nie mogą zawierać spacji ani znaków specjalnych z wyjątkiem podkreślnika i kropki
  • Wielkość liter nie jest rozróżniana (marza i Marza to ta sama zmienna)
  • Maksymalnie 126 par nazwa-wartość

LET a formuły tablicowe (dynamiczne)

LET doskonale współpracuje z dynamicznymi formułami tablicowymi (SORTUJ, FILTRUJ, UNIKATOWE, SEKWENCJA), które są jednym z filarów nowoczesnego Excela Microsoft 365. Zmienna może przechowywać całą tablicę wynikową — nie pojedynczą wartość:

=LET(
    dane; A2:D500;
    filtrowane; FILTRUJ(dane; INDEKS(dane;;2)="Aktywny"; "Brak");
    posortowane; SORTUJ(filtrowane; 4; -1);
    INDEKS(posortowane; SEKWENCJA(10); {1\4})
)

Ten fragment filtruje 500 wierszy, sortuje malejąco po czwartej kolumnie i zwraca top 10. Bez LET trzeba by powtórzyć FILTRUJ wewnątrz SORTUJ i INDEKS — formuła stałaby się nieczytelna.

Porównanie LET z innymi technikami

KryteriumLETKolumny pomocniczeLAMBDAPower Query
Gdzie działaWewnątrz jednej formułyW arkuszuJako funkcja niestandardowaPoza arkuszem, w edytorze PQ
Wydajność (duże dane)Wysoka (jedno przeliczenie na zmienną)Niska (osobne formuły dla każdej kolumny)Średnia (rekurencja kosztowna)Najwyższa (optymalizacja zapytań)
Próg wejściaNiski (składnia podobna do zwykłych formuł)MinimalnyWysoki (programowanie funkcyjne)Wysoki (język M, własny edytor)
DebugowanieZmiana ostatniego wyrażenia na nazwę zmiennejPodglądanie kolumnTRACE, ewaluacja krokowaPodgląd kroków
Przechowywanie wynikuTylko w pamięci formułyW komórkach arkuszaTylko w pamięciW modelu danych
Zgodność wstecznaTylko Excel 365 / Excel 2024 / Excel dla sieci WebWszystkie wersjeTylko Excel 365Excel 2016+

Kiedy LET jest najlepszym wyborem:

  • Formuła używa tego samego podwyrażenia 2+ razy
  • Chcesz uniknąć kolumn pomocniczych
  • Pracujesz z dynamicznymi tablicami (FILTRUJ, SORTUJ, UNIKATOWE)
  • Potrzebujesz czytelnego pipeline'u obliczeń wewnątrz komórki

Kiedy lepiej sięgnąć po alternatywę:

  • Power Query — gdy źródłem jest plik CSV, baza SQL lub potrzebujesz oczyszczania danych przed załadowaniem do arkusza
  • Kolumny pomocnicze — gdy arkusz musi działać w starszych wersjach Excela (2019, 2016)
  • LAMBDA — gdy potrzebujesz tej samej logiki w wielu miejscach arkusza (funkcja wielokrotnego użytku)
  • VBA — gdy wymagana jest interakcja z systemem plików, API zewnętrzne lub interfejs użytkownika

Praktyczne przykłady zastosowania LET

Przykład 1: Obliczenia finansowe z podatkiem progresywnym

=LET(
    przychod; SUMA(Sprzedaz[Kwota]);
    koszty; SUMA(Sprzedaz[Koszt]);
    dochod; przychod - koszty;
    podatek_19; dochod * 0,19;
    podatek_32; 0,19*120000 + (dochod - 120000) * 0,32;
    podatek_nalezny; JEŻELI(dochod <= 120000; podatek_19; podatek_32);
    JEŻELI(dochod <= 0; "Strata — brak podatku"; podatek_nalezny )
)

Ta formuła oblicza podatek dochodowy od działalności gospodarczej z uwzględnieniem progu 120 000 PLN. Zmienne podatek_19 i podatek_32 są obliczane warunkowo — tylko jedna z nich jest faktycznie używana.

Przykład 2: Dynamiczny ranking z wagami

=LET(
    oceny; C2:C100;
    wagi; D2:D100;
    srednia_wazona; SUMA.ILOCZYNÓW(oceny; wagi) / SUMA(wagi);
    ranking; PODAJ.POZYCJĘ(srednia_wazona; SORTUJ(srednia_wazona; 1; -1); 0);
    "Pozycja " & ranking & " z " & ILE.NIEPUSTYCH(oceny) & " ocen"
)

LET oblicza średnią ważoną raz, potem używa jej do określenia pozycji w rankingu.

Przykład 3: Normalizacja danych (min-max scaling)

=LET(
    zakres; B2:B500;
    min_wart; MIN(zakres);
    max_wart; MAX(zakres);
    zakres_norm; (zakres - min_wart) / (max_wart - min_wart);
    ŚREDNIA(zakres_norm)
)

Zamiast trzech oddzielnych kolumn — jedna formuła, która normalizuje 500 wartości i zwraca ich średnią.

Typowe błędy i pułapki

#NAZWA? — Excel nie rozpoznaje LET

Przyczyna: starsza wersja Excela. Funkcja LET jest dostępna wyłącznie w Microsoft 365 (subskrypcja), Excel 2024 (jednorazowy zakup) oraz Excel dla sieci Web. Excel 2019, Excel 2016 i starsze nie obsługują LET.

Rozwiązanie: aktualizacja do Microsoft 365 (subskrypcja około 299 PLN/rok) lub Office 2024 (jednorazowy zakup). Wersje wieczyste starsze niż 2024 nie otrzymują nowych funkcji formuł.

#NAZWA? — niepoprawna nazwa zmiennej

Przyczyna: użycie odwołania do komórki (A1, R1C1), spacji, znaku rozpoczynającego się od cyfry lub słowa zarezerwowanego jako nazwy zmiennej.

=LET(A1; 100; A1*2)         → #NAZWA? (A1 to odwołanie)
=LET(1raz; 100; 1raz*2)     → #NAZWA? (cyfra na początku)
=LET(moja zmienna; 100; moja_zmienna) → #NAZWA? (spacja)

Poprawnie:

=LET(wartosc; 100; wartosc*2)

#ARG! — nieparzysta liczba argumentów

LET wymaga par nazwa-wartość plus końcowego wyrażenia. Całkowita liczba argumentów musi być nieparzysta (minimum 3: nazwa1, wartość1, obliczenie). Jeśli zdefiniowałeś zmienną i zapomniałeś końcowego wyrażenia — dostaniesz #ARG!.

Zmienna przesłania odwołanie do zakresu

Jeśli zdefiniujesz zmienną o nazwie sprzedaz, która wcześniej była nazwanym zakresem w menedżerze nazw, zmienna LET przesłoni zakres dla tej formuły. To zachowanie celowe, ale może być mylące przy debugowaniu.

Nadmierne użycie zamiast refaktoryzacji

LET nie zwalnia z myślenia o strukturze danych. Formuła z 30 zmiennymi, każda jednoznakowa (a, b, c...), jest równie nieczytelna co jej odpowiednik bez LET. Zasada: nazwy zmiennych mają opisywać znaczenie, a jeśli formuła przekracza 15–20 zmiennych — rozważ przeniesienie logiki do LAMBDA lub Power Query.

LET a LAMBDA — kiedy co stosować

LET i LAMBDA to dwa różne narzędzia wprowadzone w tym samym okresie rozwoju Excela Microsoft 365, często mylone przez użytkowników.

CechaLETLAMBDA
CelUpraszczanie pojedynczej formułyTworzenie funkcji wielokrotnego użytku
ZasięgWewnątrz jednej komórkiW całym skoroszycie (przez menedżera nazw)
Parametry wejścioweNie (zmienne definiowane wewnątrz)Tak (jawnie deklarowane)
RekurencjaNieTak
Zapisywanie w menedżerze nazwNieTak (jako funkcja niestandardowa)

Złota zasada: jeśli logika jest używana tylko w jednym miejscu — LET. Jeśli ta sama logika pojawia się w 3+ komórkach — LAMBDA zdefiniowana w menedżerze nazw.

Można je też łączyć — wnętrze LAMBDA często korzysta z LET dla czytelności:

=LAMBDA(przychod; koszt;
    LET(dochod; przychod - koszt;
        JEŻELI(dochod > 0; dochod * 0,19; 0)
    )
)(A2; B2)

Częste pytania

Czy LET działa w Excel 2019?

Nie. Funkcja LET została wprowadzona w marcu 2020 roku i jest dostępna wyłącznie w subskrypcji Microsoft 365, pakiecie Office 2024 LTSC oraz Excel dla sieci Web. Użytkownicy Excel 2019, Excel 2016 i starszych wersji muszą używać kolumn pomocniczych lub VBA jako obejścia. Aktualizacja do Microsoft 365 lub Office 2024 jest jedyną drogą do uzyskania dostępu do LET.

Czy LET przyspiesza przeliczanie arkusza?

Tak, i to znacząco — zwłaszcza gdy formuła wielokrotnie wywołuje kosztowne funkcje (FILTRUJ, WYSZUKAJ.PIONOWO, X.WYSZUKAJ, SUMA.WARUNKÓW). Każda zmienna jest obliczana raz, a nie tyle razy, ile występuje w końcowym wyrażeniu. W arkuszach z >50 000 wierszy i >1000 formuł oszczędność może wynieść 30–60% czasu przeliczania.

Ile zmiennych mogę zdefiniować w jednej funkcji LET?

Maksymalnie 126 par nazwa-wartość. W praktyce formuły rzadko przekraczają 8–12 zmiennych — powyżej tej granicy kod staje się trudny do debugowania i lepiej rozważyć refaktoryzację na LAMBDA lub Power Query.

Czy nazwy zmiennych w LET muszą być unikalne?

Tak. Każda nazwa w obrębie jednej funkcji LET musi być unikalna. Jeśli zdefiniujesz tę samą nazwę dwukrotnie, Excel zwróci błąd #NAZWA?. Kolejne LET mogą jednak ponownie użyć tych samych nazw — każda formuła ma własny zasięg zmiennych.

Czy LET może zwracać tablicę dynamiczną?

Tak. Końcowe wyrażenie LET może zwracać wartość skalarną, tablicę jednowymiarową, tablicę dwuwymiarową, a nawet wynik innej funkcji dynamicznej (FILTRUJ, SORTUJ). Excel automatycznie rozleje wynik na sąsiednie komórki zgodnie z mechanizmem tablic dynamicznych Microsoft 365.

Jak debugować formułę LET?

Najprostsza technika: tymczasowo zastąp końcowe wyrażenie nazwą zmiennej pośredniej, by sprawdzić jej wartość. Przykład: jeśli formuła =LET(x; A2*B2; y; x+C2; y*D2) zwraca nieoczekiwany wynik, zmień y*D2 na x, potem na y, obserwując wyniki cząstkowe. Po zlokalizowaniu błędu przywróć pierwotne wyrażenie końcowe.

Czy LET współpracuje z formatowaniem warunkowym?

Tak, ale z ograniczeniem. Formuła LET może być użyta jako formuła formatowania warunkowego, jednak zmienne nie są współdzielone między regułami — każda reguła ma własny kontekst. Przy skomplikowanych warunkach LET znacząco upraszcza formuły reguł formatowania.

Czy funkcja LET działa w Excel na Mac?

Tak. Excel dla komputerów Mac w ramach subskrypcji Microsoft 365 w pełni obsługuje funkcję LET od czasu jej wprowadzenia. Działa identycznie jak na Windows — bez żadnych różnic w składni ani zachowaniu.

Czy istnieje zamiennik LET w Arkuszach Google?

Tak, Arkusze Google wprowadziły funkcję LET w 2021 roku z identyczną składnią. Formuły LET utworzone w Excel są w pełni przenośne między Excelem a Arkuszami Google, pod warunkiem że nie używają funkcji specyficznych dla Excela (np. X.WYSZUKAJ, które w Arkuszach Google nie istnieje).

Czy LET może odwoływać się do komórek z innego arkusza?

Tak. Wartości przypisywane zmiennym mogą być odwołaniami do innych arkuszy, zakresów 3D, a nawet odwołaniami do innych skoroszytów. Zmienna dane może przyjąć wartość 'Arkusz1'!A2:D5000 bez żadnych ograniczeń.


Jeśli pracujesz z Excelem na co dzień i chcesz korzystać z funkcji LET, LAMBDA, dynamicznych tablic oraz Copilot AI, upewnij się, że masz aktualną wersję pakietu. Microsoft 365 w wersji subskrypcyjnej zapewnia wszystkie opisane funkcje, ciągłe aktualizacje i dostęp do asystenta AI. KluczeSoft oferuje oryginalne klucze Microsoft 365 Personal i Family z fakturą VAT 23%, dostawą e-mailem w kilka minut i polskojęzycznym wsparciem — sprawdź ofertę na kluczesoft.pl/klucze-microsoft-365.

Najczęściej zadawane pytania

Nie. Funkcja LET została wprowadzona w marcu 2020 roku i jest dostępna wyłącznie w subskrypcji Microsoft 365, pakiecie Office 2024 LTSC oraz Excel dla sieci Web. Użytkownicy Excel 2019, Excel 2016 i starszych wersji muszą używać kolumn pomocniczych lub VBA jako obejścia. Aktualizacja do Microsoft 365 lub Office 2024 jest jedyną drogą do uzyskania dostępu do LET.
Tak, i to znacząco — zwłaszcza gdy formuła wielokrotnie wywołuje kosztowne funkcje (FILTRUJ, WYSZUKAJ.PIONOWO, X.WYSZUKAJ, SUMA.WARUNKÓW). Każda zmienna jest obliczana raz, a nie tyle razy, ile występuje w końcowym wyrażeniu. W arkuszach z >50 000 wierszy i >1000 formuł oszczędność może wynieść 30–60% czasu przeliczania.
Maksymalnie 126 par nazwa-wartość. W praktyce formuły rzadko przekraczają 8–12 zmiennych — powyżej tej granicy kod staje się trudny do debugowania i lepiej rozważyć refaktoryzację na LAMBDA lub Power Query.
Tak. Każda nazwa w obrębie jednej funkcji LET musi być unikalna. Jeśli zdefiniujesz tę samą nazwę dwukrotnie, Excel zwróci błąd #NAZWA?. Kolejne LET mogą jednak ponownie użyć tych samych nazw — każda formuła ma własny zasięg zmiennych.
Tak. Końcowe wyrażenie LET może zwracać wartość skalarną, tablicę jednowymiarową, tablicę dwuwymiarową, a nawet wynik innej funkcji dynamicznej (FILTRUJ, SORTUJ). Excel automatycznie rozleje wynik na sąsiednie komórki zgodnie z mechanizmem tablic dynamicznych Microsoft 365.
Najprostsza technika: tymczasowo zastąp końcowe wyrażenie nazwą zmiennej pośredniej, by sprawdzić jej wartość. Przykład: jeśli formuła `=LET(x; A2*B2; y; x+C2; y*D2)` zwraca nieoczekiwany wynik, zmień `y*D2` na `x`, potem na `y`, obserwując wyniki cząstkowe. Po zlokalizowaniu błędu przywróć pierwotne wyrażenie końcowe.
Tak, ale z ograniczeniem. Formuła LET może być użyta jako formuła formatowania warunkowego, jednak zmienne nie są współdzielone między regułami — każda reguła ma własny kontekst. Przy skomplikowanych warunkach LET znacząco upraszcza formuły reguł formatowania.
Tak. Excel dla komputerów Mac w ramach subskrypcji Microsoft 365 w pełni obsługuje funkcję LET od czasu jej wprowadzenia. Działa identycznie jak na Windows — bez żadnych różnic w składni ani zachowaniu.
Tak, Arkusze Google wprowadziły funkcję LET w 2021 roku z identyczną składnią. Formuły LET utworzone w Excel są w pełni przenośne między Excelem a Arkuszami Google, pod warunkiem że nie używają funkcji specyficznych dla Excela (np. X.WYSZUKAJ, które w Arkuszach Google nie istnieje).
Tak. Wartości przypisywane zmiennym mogą być odwołaniami do innych arkuszy, zakresów 3D, a nawet odwołaniami do innych skoroszytów. Zmienna `dane` może przyjąć wartość `'Arkusz1'!A2:D5000` bez żadnych ograniczeń. --- Jeśli pracujesz z Excelem na co dzień i chcesz korzystać z funkcji LET, LAMBDA, dynamicznych tablic oraz Copilot AI, upewnij się, że masz aktualną wersję pakietu. **Microsoft 365 w wersji subskrypcyjnej** zapewnia wszystkie opisane funkcje, ciągłe aktualizacje i dostęp do asystenta AI. KluczeSoft oferuje oryginalne klucze Microsoft 365 Personal i Family z fakturą VAT 23%, dostawą e-mailem w kilka minut i polskojęzycznym wsparciem — sprawdź ofertę na [kluczesoft.pl/klucze-microso

Czy ten artykuł był pomocny?

Funkcja LET w Excelu — kompletny przewodnik 2026 | Centrum Pomocy KluczeSoft