Aby w Excelu obliczyć, ile dni minęło od wybranej daty, można wykorzystać kilka prostych i zaawansowanych metod—od odejmowania dat po wyspecjalizowane funkcje, takie jak DNI, DATEDIF czy DNI.ROBOCZE. Poniżej znajdziesz poradnik krok po kroku, który omawia każdą z tych metod wraz z przykładami zastosowań i wyjaśnieniem typowych problemów.
Spis treści
- Wstęp: formatowanie dat
- Najprostsza metoda: odejmowanie dat
- Funkcja DNI
- Funkcja DATEDIF (DATA.RÓŻNICA)
- Obliczanie liczby dni do dziś
- Dni robocze (DNI.ROBOCZE)
- Najczęstsze błędy i praktyczne wskazówki
1. Wstęp – Formatowanie dat
Wszystkie metody wymagają, aby daty były wpisane w odpowiedni sposób (format daty: YYYY-MM-DD, DD.MM.RRRR, lub inny zgodny z ustawieniami Excela). Gdy jedna z dat nie zostanie rozpoznana, formuły mogą zwrócić błąd lub nieprawidłowy wynik.
2. Najprostsza metoda – odejmowanie dat
To najintuicyjniejszy sposób:
- Wprowadź datę początkową (np. 2024-01-01) w komórkę A1.
- Wprowadź datę końcową (np. 2024-10-08) w komórkę B1.
- W komórce C1 wpisz:
=B1-A1
Excel automatycznie poda liczbę dni, które minęły między datami. Uwaga – Wynik będzie dodatni, jeżeli data końcowa jest późniejsza od początkowej.
3. Funkcja DNI
Funkcja DNI została stworzona właśnie do takich obliczeń:
=DNI(data_końcowa; data_początkowa)
Przykład – Jeśli data początkowa to A1, a końcowa to B1 (B1 jest później niż A1):
=DNI(B1;A1)
Różnica w dniach będzie identyczna jak po prostym odejmowaniu, ale formuła ta jest bardziej czytelna dla użytkowników Excela.
4. Funkcja DATEDIF (DATA.RÓŻNICA)
Ta funkcja pozwala elastycznie określić jednostkę czasu – możesz obliczyć różnicę nie tylko w dniach, ale też miesiącach czy latach:
=DATEDIF(data_początkowa; data_końcowa; "jednostka")
Najważniejsze jednostki:
- „d” – liczba dni
- „m” – liczba pełnych miesięcy
- „y” – liczba pełnych lat
- „md” – liczba dni, pomijając pełne miesiące
- „yd” – liczba dni, pomijając pełne lata.
Przykład –
=DATEDIF(A1;B1;"d")
Wynik to liczba dni między datami z komórek A1 i B1.
5. Obliczanie liczby dni od daty do dziś
Żeby zobaczyć, ile dni minęło od wybranej daty do bieżącego dnia, użyj funkcji DZIŚ() (dynamicznie pobiera dzisiejszą datę):
=DNI(DZIŚ();A1)
lub
=DATEDIF(A1;DZIŚ();"d")
Dzięki temu arkusz na bieżąco pokazuje aktualny wynik – po otwarciu w kolejnych dniach formuły zaktualizują się automatycznie.
6. Dni robocze — funkcja DNI.ROBOCZE
Jeśli potrzebujesz liczby dni roboczych (z pominięciem weekendów, opcjonalnie świąt) –
=DNI.ROBOCZE(data_początkowa; data_końcowa)
Jeśli chcesz dodatkowo odjąć listę świąt wypisanych np. w zakresie E1:E10:
=DNI.ROBOCZE(A1;B1;E1:E10)
Wynik: tylko dni robocze między datami (bez sobót, niedziel i, jeśli podasz, świąt).
7. Najczęstsze błędy i praktyczne wskazówki
- Wyświetlanie liczby zamiast daty – Jeśli po odejmowaniu widzisz dziwną datę, a nie liczbę—zmień format komórki na liczbę.
- Daty nie są rozpoznawane – Upewnij się, że daty wpisujesz jako daty, a nie tekst.
- Odwrotna kolejność – Funkcje zwracają wartości ujemne, jeśli data początkowa jest później niż końcowa. Najlepiej zachować logiczną kolejność (od-do).
Tabela porównawcza metod
| Metoda | Zalety | Wady |
|---|---|---|
| Odejmowanie dat | Prosta, natychmiastowa | Mało elastyczna |
| Funkcja DNI | Przejrzysta, szybka | Tylko różnica w dniach |
| Funkcja DATEDIF | Bardzo elastyczna (dni, miesiące…) | Mniej intuicyjna, rzadziej opisana w pomocy |
| Funkcja DNI.ROBOCZE | Liczy tylko dni robocze | Wymaga określenia listy świąt (opcjonalnie) |
Podsumowanie
Aby obliczyć ilość dni od daty w Excelu –
- Najprościej:
=B1-A1 - Funkcyjnie:
=DNI(B1;A1) - Zaawansowanie:
=DATEDIF(A1;B1;"d") - Dynamicznie do dzisiaj:
=DATEDIF(A1;DZIŚ();"d")lub=DNI(DZIŚ();A1) - Z pominięciem weekendów i świąt:
=DNI.ROBOCZE(A1;B1;E1:E10)
Stosuj te metody zależnie od potrzeb – każda daje szybkie, poprawne rezultaty przy odpowiednim użyciu.
