=A2+30 zwraca datę 30 dni po dacie z A2. Excel przechowuje daty jako liczby dni, więc dodanie liczby przesuwa datę o tyle dni do przodu. Dla miesięcy, które mają różną długość, użyj =NR.SER.DATY(A2;3) (po angielsku =EDATE(A2,3)): ten sam dzień, trzy miesiące później. Tabele pokazują formuły po angielsku, ale możesz w nich wpisywać formuły także po polsku, ze średnikami.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Invoice date | Due (30 days) | Due (90 days) | Two weeks later |
| 2 | 2026-03-10 | 2026-04-09 | 2026-06-08 | 2026-03-24 |
| 3 | 2026-03-25 | 2026-04-24 | 2026-06-23 | 2026-04-08 |
| 4 | 2026-04-02 | 2026-05-02 | 2026-07-01 | 2026-04-16 |
| 5 | 2026-12-15 | 2027-01-14 | 2027-03-15 | 2026-12-29 |
=A2+30Faktura z 2026-03-10 ma termin płatności 2026-04-09 przy 30 dniach i 2026-06-08 przy 90 dniach. Grudniowa faktura przechodzi na 2027 bez żadnej dodatkowej pracy. Odejmij, aby cofnąć się w czasie: =A2-30 to 30 dni wcześniej. Dla tygodni pomnóż: =A2+7*2 to dwa tygodnie później.
Dodawanie miesięcy funkcją NR.SER.DATY
„Miesiąc później” to nie stała liczba dni, więc +30 się rozjeżdża: od 1 lutego trafia na 3 marca. NR.SER.DATY(data_pocz;miesiące) (EDATE) zachowuje dzień miesiąca i zmienia miesiąc. Ujemna liczba miesięcy cofa datę.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Start | Months | Renews | Reminder |
| 2 | 2026-01-15 | 1 | 2026-02-15 | 2026-01-15 |
| 3 | 2026-02-01 | 3 | 2026-05-01 | 2026-04-01 |
| 4 | 2026-03-20 | 12 | 2027-03-20 | 2027-02-20 |
| 5 | 2026-11-05 | 6 | 2027-05-05 | 2027-04-05 |
=NR.SER.DATY(A2;B2)Plan roczny, który zaczyna się 2026-03-20, odnawia się 2027-03-20, a plan półroczny z listopada 2027-05-05. Kolumna D wysyła przypomnienie miesiąc przed każdym odnowieniem. Zmień liczbę miesięcy w kolumnie B, aby zobaczyć, jak przesuwa się data.
Gdy dzień początkowy nie istnieje w docelowym miesiącu, NR.SER.DATY bierze ostatni dzień tego miesiąca. Oto wyniki Excela:
=EDATE("2026-01-31", 1) 2026-02-28
=EDATE("2026-08-31", 1) 2026-09-30
=EDATE("2024-03-31", -1) 2024-02-29
W polskim Excelu: =NR.SER.DATY("2026-01-31";1), =NR.SER.DATY("2026-08-31";1) i =NR.SER.DATY("2024-03-31";-1).
Dodawanie lat do daty
Rok to 12 miesięcy, więc =NR.SER.DATY(A2;12*B2) dodaje B2 lat. Przy gwarancjach, umowach i rocznicach zachowuje ten sam dzień i miesiąc.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Bought | Years | Warranty ends | With DATE |
| 2 | 2026-03-14 | 2 | 2028-03-14 | 2028-03-14 |
| 3 | 2025-07-01 | 5 | 2030-07-01 | 2030-07-01 |
| 4 | 2026-11-28 | 3 | 2029-11-28 | 2029-11-28 |
=NR.SER.DATY(A2;12*B2)Obie kolumny dają 2028-03-14, 2030-07-01 i 2029-11-28. Różnią się tylko dla jednej daty: 29 lutego. =DATA(2027;2;29) przechodzi na 2027-03-01, a NR.SER.DATY zwraca 2027-02-28.
Ostatni dzień miesiąca funkcją NR.SER.OST.DN.MIES
NR.SER.OST.DN.MIES(data_pocz;miesiące) (po angielsku EOMONTH) zwraca ostatni dzień miesiąca: 0 dla tego samego miesiąca, 1 dla następnego, -1 dla poprzedniego. Pierwszy dzień miesiąca to dzień po końcu poprzedniego, NR.SER.OST.DN.MIES(A2;-1)+1.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Date | End of month | End of next month | First of month |
| 2 | 2026-02-10 | 2026-02-28 | 2026-03-31 | 2026-02-01 |
| 3 | 2024-02-10 | 2024-02-29 | 2024-03-31 | 2024-02-01 |
| 4 | 2026-12-31 | 2026-12-31 | 2027-01-31 | 2026-12-01 |
=NR.SER.OST.DN.MIES(A2;0)Luty 2026 kończy się 28., a luty 2024 29. Od 2026-12-31 koniec następnego miesiąca to 2027-01-31. NR.SER.OST.DN.MIES to formuła na „płatność do końca miesiąca następującego po fakturze”, =NR.SER.OST.DN.MIES(A2;1). Dla dni roboczych użyj DZIEŃ.ROBOCZY (WORKDAY): =DZIEŃ.ROBOCZY(A2;10) to 10 dni roboczych po A2, z pominięciem weekendów (zobacz DNI.ROBOCZE i DZIEŃ.ROBOCZY).
Ćwiczenie: odnowienie i koniec miesiąca
| A | B | C | |
|---|---|---|---|
| 1 | Start | Months | Renews |
| 2 | 2026-03-10 | 6 |
Twoja kolej: W C2 zwróć datę, która przypada tyle miesięcy po dacie początkowej z A2, ile podano w B2.
| A | B | |
|---|---|---|
| 1 | Date | Month end |
| 2 | 2026-04-14 |
Twoja kolej: W B2 zwróć ostatni dzień miesiąca daty z A2.
Częsty błąd: dodawanie miesiąca przez DATA i MIESIĄC+1
Formuła taka jak =DATA(ROK(A2);MIESIĄC(A2)+1;DZIEŃ(A2)) wygląda na „miesiąc później” i przez większość czasu jest poprawna. Gdy dnia nie ma w następnym miesiącu, DATA nie zatrzymuje się na końcu miesiąca: przenosi nadmiarowe dni do kolejnego miesiąca.
| A | B | C | |
|---|---|---|---|
| 1 | Date | MONTH+1 with DATE | End of next month |
| 2 | 2026-01-31 | 2026-03-03 | 2026-02-28 |
=DATA(ROK(A2);MIESIĄC(A2)+1;DZIEŃ(A2))Od 31 stycznia formuła z DATA zwraca 2026-03-03, bo „31 lutego” to trzy dni po 28 lutego. NR.SER.DATY zwraca 2026-02-28, a gdy chodzi o koniec miesiąca, NR.SER.OST.DN.MIES mówi to wprost. Więcej o tym, jak DATA obsługuje nadmiarowe miesiące i dni: funkcja DATA.
Najczęściej zadawane pytania
Jak dodać dni do daty w Excelu?
Dodaj liczbę: =A2+30 to 30 dni po dacie z A2, a =A2-30 to 30 dni przed nią. Excel przechowuje daty jako liczby dni, więc zwykłe dodawanie działa przez granice miesięcy i lat.
Jak dodać miesiące do daty w Excelu?
Użyj NR.SER.DATY: =NR.SER.DATY(A2;3) zwraca ten sam dzień trzy miesiące później, a =NR.SER.DATY(A2;-3) trzy miesiące wcześniej. Gdy takiego dnia nie ma, NR.SER.DATY bierze ostatni dzień miesiąca: =NR.SER.DATY("2026-01-31";1) to 2026-02-28.
Jak uzyskać ostatni dzień miesiąca w Excelu?
=NR.SER.OST.DN.MIES(A2;0) zwraca ostatni dzień miesiąca daty z A2. =NR.SER.OST.DN.MIES(A2;1) to koniec następnego miesiąca, a =NR.SER.OST.DN.MIES(A2;-1)+1 pierwszy dzień miesiąca daty z A2.
Jak dodać lata do daty w Excelu?
=NR.SER.DATY(A2;12*5) dodaje pięć lat. =DATA(ROK(A2)+5;MIESIĄC(A2);DZIEŃ(A2)) też działa, ale w roku nieprzestępnym zamienia 29 lutego na 1 marca, a NR.SER.DATY daje 28 lutego.
Dlaczego po dodaniu dni pojawia się liczba zamiast daty?
Komórka wyniku ma format Ogólne albo Liczbowe, więc data wyświetla się jako liczba kolejna, na przykład 46126. Zaznacz ją i wybierz Narzędzia główne > Format liczb > Data krótka.