REKLAMA

Pisałeś złożone formuły w Excelu, ale czegoś ci brakowało? Teraz rozwiniesz skrzydła

Każdy, kto napisał bardziej złożoną formułę w Excelu, przeciągnął ją na kilka komórek lub uzależnił od niej wynik innej formuły, może sobie pogratulować. To pierwszy krok w stronę programowania.

Pisałeś złożone formuły w Excelu, ale czegoś ci brakowało? Teraz rozwiniesz skrzydła
REKLAMA

Tak naprawdę przez wiele lat zostanie tzw. power userem miało swoje dalsze kroki. Po złożonych formułach w Excelu można było pisać np. skrypty automatyzujące pracę lub nawet tworzyć całe aplikacje oparte na narzędziach biurowych takich jak Excel.

Excel sam w sobie posiada możliwość pisania własnych skryptów - nie jest to jednak oczywiste. Otwórzcie jednak Excela, stwórzcie pusty arkusz i wciśnijcie Alt-F11. Zobaczycie zadziwiająco archaiczny, od wielu lat nieaktualizowany interfejs, przypominający Visual Studio sprzed 15 lat. To właśnie jest środowisko, które w tej chwili umożliwia pisanie własnych funkcji, które rozszerzają możliwości Excela. Własne funkcje możemy pisać w języku VBA - Visual Basic for Applications.

REKLAMA

Do czego możemy użyć pisania funkcji? W skrócie - do zapisania obliczeń, które są zbyt złożone dla formuł i które chcemy wywoływać z wielu miejsc. Wyobraźmy sobie np. kod sprawdzający PESEL. Teoretycznie możemy zapisać go jako formułę, ale jeśli chcemy użyć go w innym miejscu, musimy go przekopiować. Podobnie musimy pamiętać o jego zmianie, jeśli znajdziemy i poprawimy w nim błąd. Definicja funkcji jest w jednym miejscu i jest wywoływana tam, gdzie jest potrzebna - to podstawowa różnica pomiędzy funkcją i formułą.

Excel posiada szereg funkcji wbudowanych. Zapewne każdy używający Excela użył ich wielokrotnie: są to słowa kluczowe typu DATA(), ZŁĄCZ.TEKST() czy SUMA(). Funkcjami są też wyrażenia matematyczne, którym przekazujemy parametry, np. SINUS().

Funkcje można definiować również w języku JavaScript, ale mam wrażenie, że jest to jeszcze bardziej skomplikowane niż pisanie ich w VBA.

Czytaj też:

A gdyby tak można było zapisywać formuły jako funkcje?

Każdy średnio zaawansowany użytkownik Excela potrafi zrobić cuda w formułach. Gdy rośnie liczba przetwarzanych danych, formuły stają się błogosławieństwem, ale i przekleństwem. Szczególnie problematyczne staje się poprawianie ich w każdej komórce, w której jest skopiowana lub „przeciągnięta”.

A gdyby tak można było zdefiniować formułę raz, nie pisząc w żadnym języku programowania, i wywoływać ją tam, gdzie potrzebujemy? Wyobraźmy sobie choćby najprostszą formułę, obliczającą podatek o podanej stawce.

Jak ogłosił Brian Jones na oficjalnym blogu poświęconym Excelowi, użytkownicy pakietu biurowego Microsoft Office otrzymają taką możliwość. Funkcja została nazwana Lambda - co jest pojęciem znanym programistom i oznacza właśnie między innymi funkcje tworzone ad hoc z wyrażeń.

REKLAMA

Funkcje Excel Lambda będą musiały być zdefiniowane w nazwanej komórce (tzn. takiej której zmienimy nazwę z domyślnej opartej na adresie typu B1). Będą mogły również wywoływać się wzajemnie, a nawet… wywoływać same siebie, umożliwiając programowanie rekurencji. To bardzo dobra wiadomość dla wszystkich, którym tych możliwości brakowało w Excelu.

Nowa funkcja jest dostępna w wersji Beta (trzeba być użytkownikiem programu Insider), jednak po zakończeniu testów zostanie udostępniona wszystkim.

REKLAMA
Najnowsze
Aktualizacja: 2026-02-13T21:12:13+01:00
Aktualizacja: 2026-02-13T20:06:35+01:00
Aktualizacja: 2026-02-13T18:15:28+01:00
Aktualizacja: 2026-02-13T18:10:56+01:00
Aktualizacja: 2026-02-13T18:03:53+01:00
Aktualizacja: 2026-02-13T18:02:41+01:00
Aktualizacja: 2026-02-13T17:41:35+01:00
Aktualizacja: 2026-02-13T17:39:06+01:00
Aktualizacja: 2026-02-13T16:47:36+01:00
Aktualizacja: 2026-02-13T16:29:50+01:00
Aktualizacja: 2026-02-13T16:15:45+01:00
Aktualizacja: 2026-02-13T15:31:30+01:00
Aktualizacja: 2026-02-13T15:00:37+01:00
Aktualizacja: 2026-02-13T14:54:57+01:00
Aktualizacja: 2026-02-13T14:42:06+01:00
Aktualizacja: 2026-02-13T13:08:03+01:00
Aktualizacja: 2026-02-13T12:57:20+01:00
Aktualizacja: 2026-02-13T11:38:58+01:00
Aktualizacja: 2026-02-13T10:48:12+01:00
Aktualizacja: 2026-02-13T07:00:00+01:00
Aktualizacja: 2026-02-13T06:17:00+01:00
Aktualizacja: 2026-02-13T06:11:00+01:00
Aktualizacja: 2026-02-12T21:41:46+01:00
REKLAMA
REKLAMA
REKLAMA