MS Excel – kalendarz w jednej formule

Trudność: 🔴 (trudne)


Jak stworzyć kalendarz jedną formułą? Możesz oczywiście skopiować ostateczną wersję formuły z dołu tego wpisu, ale lepiej zanim to zrobimy poznaj kilka przydatnych funkcji.

funkcja DATA()

To funkcja tworząca datę na podstawie roku, miesiąca, dnia.
Przykład użycia: =DATA(2025;1;1)
Wynik: 2025-01-01

funkcja DZIEŃ.TYG()

To funkcja wyliczająca numer dnia tygodnia podanej daty.

Przykład użycia: =DZIEŃ.TYG( DATA(2025;1;1) )
Wynik: 4 (co sugeruje czwartek… ale to jest środa! Ta funkcja przyjmuje, że niedziela jest pierwszym dniem tygodnia)

Naprawmy to podając drugi argument tej funkcji: =DZIEŃ.TYG( DATA(2025;1;1); 2)
Wynik: 3 (dzięki argumentowi “2” Excel wyliczył dzień tygodnia przyjmując, że wynik “1” jest dla poniedziałku)

funkcja SEKWENCJA()

Dostępna w Microsoft 365. To funkcja wypełniająca zadany obszar zadaną treścią. Wynik będzie rozlany (trochę na ten temat w tym artykule MS Excel – typy odwołań).

Przykład użycia: =SEKWENCJA(3;5;0;1)
Wynik: 3 wiersze, 5 kolumn wypełnionych liczbami od 0 ze skokiem 1 (czyli aż do 14)

Rozwiązanie problemu

No to spróbujmy połączyć uzyskane informacje.

Ta formuła =SEKWENCJA(54;7;DATA(2025;1;1);1) sprawi, że 54 wiersze i 7 kolumn zostanie wypełnionych kolejnymi datami począwszy od 1 stycznia 2025. Jest tylko jeden problem. Data 2025-01-01 wypada w środę. Zatem naszą pierwszą datą sekwencji powinien być ostatni poniedziałek 2024 roku.

Dokonajmy wiec małej korekty, przy wyznaczaniu pierwszej daty sekwencji, wpisując formułę
=SEKWENCJA(53; 7; DATA(2025;1;1)-DZIEŃ.TYG(DATA(2025;1;1);2)+1; 1)

Używamy tu znanych Ci już funkcji
DZIEŃ.TYG(DATA(2025;1;1);2) daje w wyniku 3 wiec odejmując “3” od środy dostaniemy niedzielę, a my chcemy zacząć od poniedziałku… wiec dokładamy “1” otrzymując: DZIEŃ.TYG(DATA(2025;1;1);2)+1

Cała i ostateczna formuła wygląda tak: =SEKWENCJA(53; 7; DATA(2025;1;1)-DZIEŃ.TYG(DATA(2025;1;1);2)+1; 1)

Dokładając do tego stosunkowo proste formatowanie warunkowe uzyskamy efekt pokazany poniżej.

Pamiętaj o zmianie formatu wyników na “Data krótka”.

PS Takie i podobne rzeczy pojawiają się na naszych szkoleniach. W razie pytań pisz biuro@kursyb2b.pl