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: 2025-11-07T20:25:53+01:00
Aktualizacja: 2025-11-07T19:07:04+01:00
Aktualizacja: 2025-11-07T18:54:38+01:00
Aktualizacja: 2025-11-07T17:52:41+01:00
Aktualizacja: 2025-11-07T16:53:10+01:00
Aktualizacja: 2025-11-07T16:23:59+01:00
Aktualizacja: 2025-11-07T15:42:27+01:00
Aktualizacja: 2025-11-07T15:17:17+01:00
Aktualizacja: 2025-11-07T15:00:23+01:00
Aktualizacja: 2025-11-07T13:52:24+01:00
Aktualizacja: 2025-11-07T11:59:13+01:00
Aktualizacja: 2025-11-07T11:09:36+01:00
Aktualizacja: 2025-11-07T09:47:08+01:00
Aktualizacja: 2025-11-07T08:38:13+01:00
Aktualizacja: 2025-11-07T07:15:58+01:00
Aktualizacja: 2025-11-07T06:12:00+01:00
Aktualizacja: 2025-11-07T06:08:00+01:00
Aktualizacja: 2025-11-07T06:06:00+01:00
Aktualizacja: 2025-11-06T21:09:19+01:00
Aktualizacja: 2025-11-06T20:44:11+01:00
Aktualizacja: 2025-11-06T20:15:53+01:00
Aktualizacja: 2025-11-06T19:55:52+01:00
Aktualizacja: 2025-11-06T19:44:22+01:00
REKLAMA
REKLAMA
REKLAMA