course
Może Pana/Panią zaskoczyć, że Excel przechowuje czas jako ułamek doby. Oznacza to, że nie zapisuje 8:30 AM tak, jak to widać, lecz jako 0.35417, czyli 8,5/24. Można o tym myśleć jako o 35,4% pełnej doby.
W tym artykule omówię te i inne ważne scenariusze:
- Różnica czasu: obliczanie odstępu między godziną rozpoczęcia a zakończenia w tym samym dniu.
- Czas upływu: mierzy czas trwania obejmujący wiele dni, z użyciem pełnych znaczników daty i godziny.
- Czas między datami: obliczanie odstępu między dwiema datami kalendarzowymi w dniach, godzinach lub minutach.
- Łączny czas: sumowanie wielu wpisów czasowych bez powrotu do 0 po 24 godzinach.
- Średni czas: obliczanie średniej z wielu wpisów czasowych.
Jak obliczyć różnicę czasu w Excelu
Prędzej czy później będzie trzeba obliczyć odstęp między godziną rozpoczęcia a zakończenia (koniec - początek). Niezależnie od tego, czy używa się formatu 12‑godzinnego, czy 24‑godzinnego, Excel traktuje je jako wartości dziesiętne.
Samo obliczanie przez Excel i zwracanie ułamków nie jest problemem; problemem jest czytelność wyniku, a tu kluczowe jest formatowanie.
Proszę spojrzeć na ten przykład:

Tutaj komórka C2 domyślnie wyświetli 0.354167 (8,5/24). Ta liczba jest poprawna. Oznacza 8 godzin i 30 minut jako ułamek doby. Aby wynik był czytelny, proszę zastosować niestandardowy format [h]:mm.
Oto krok po kroku, jak zastosować właściwy format:
-
Zaznaczyć komórkę C2.
-
Nacisnąć
Ctrl + 1, aby otworzyć okno dialogowe Formatuj komórki. -
Kliknąć Niestandardowe.
-
W polu Typ wpisać
[h]:mmlub przewinąć listę opcji i wybrać[h]:mm:ss, a następnie kliknąć OK.

Komórka C2 wyświetla teraz 8:30:00.
Jak widać, użyto [h]:mm zamiast h:mm, ponieważ bez nawiasów Excel zawija wyświetlanie godzin do zera po 24. Czas trwania 26 godzin pokazałby 2:00 zamiast 26:00. Nawiasy mówią Excelowi, aby wyświetlał łączną liczbę godzin, a nie wskazanie godziny na zegarze.
Excel obsługuje zarówno format 12‑godzinny (AM/PM), jak i 24‑godzinny. Komórka pokazująca 9:00 AM jest tym samym co 09:00, a 9:00 PM to 21:00. Najważniejsze jest stosowanie właściwego formatowania w komórkach, aby obliczenia działały zgodnie z oczekiwaniami.
Jak obliczyć czas upływu w Excelu
Czas upływu i różnica czasu to pojęcia podobne, ale różne.
Podczas gdy różnica czasu, jak wspomniałem wcześniej, oblicza odstęp między dwiema godzinami w tym samym dniu, czas upływu obejmuje wiele dni i do dokładnych obliczeń wymaga pełnych wartości daty i czasu (znaczników czasu).
Wzór jest następujący:
= enddate_timestamp - startdate_timestamp
Obie komórki muszą zawierać pełną datę i godzinę. Na przykład 3/1/2026 14:00 oraz 3/3/2026 9:30.

Po sformatowaniu komórki C2 jako [h]:mm wynik to 43:30, co oznacza 43 godziny i 30 minut czasu upływu.

Podczas wykonywania tych obliczeń mogą pojawić się błędy, takie jak wyświetlanie ######## lub wartości ujemnych. Później wyjaśnię, jak rozwiązać takie problemy.
Jak obliczyć czas między datami w Excelu
W przypadku obliczania różnic dat zagadnienie jest nieco inne niż w minutach i godzinach. Excel przechowuje daty jako liczby seryjne (1 stycznia 1900 to 1, 2 stycznia 1900 to 2), więc można łatwo odejmować daty i znaleźć odstęp.
Aby obliczyć liczbę dni między datami, wystarczy od daty końcowej odjąć datę początkową (= end_date - start_date).
Oto, co mam na myśli:

Wynik to 9 dni, ale proszę upewnić się, że komórka jest sformatowana jako liczba; w przeciwnym razie Excel wyświetli ją jako datę zamiast liczby dni.
Gdy ma Pan/Pani liczbę dni, łatwo można ją przeliczyć na liczbę godzin i minut, mnożąc:
-
Godziny między datami
= (End_Date - Start_Date) * 24 -
Minuty między datami
= (End_Date - Start_Date) * 24 * 60
Proszę rozważyć ten przykład:

Godziny między (liczba godzin między dwiema datami) = 216 godzin
Minuty między datami (liczba minut między dwiema datami) = 12 960
W Excelu istnieje funkcja, która pozwala obliczać różnice w określonych jednostkach (dni, miesiące, lata) i nazywa się DATEDIF(). Logika obliczeń wygląda tak:
= DATEDIF(Start_Date, End_Date, "d") → Total difference in days
= DATEDIF(Start_Date, End_Date, "m") → Total difference in months
= DATEDIF(Start_Date, End_Date, "y") → Total difference in years
Jeśli chce Pan/Pani zrozumieć podstawowe pojęcia w Excelu, polecam zapoznać się ze ścieżką Excel Fundamentals.
Jak obliczyć łączny czas w Excelu
Sumowanie listy wpisów czasowych w Excelu działa tak samo jak sumowanie innych typów danych.
= SUM(C2:C15)
Problem pojawia się jednak, gdy suma wszystkich wpisów przekracza 24 godziny, co skutkuje powrotem do 0. Rozwiązaniem jest to, o czym piszę od początku: sformatowanie komórki z sumą jako [h]:mm.

Bez formatowania komórki sumy (B7) wynik wyniósłby 16:30, ale po sformatowaniu staje się 40:30.

Aby sprawnie obsługiwać duże sumy czasu, format [h]:mm radzi sobie z dowolnie dużą łączną wartością bez górnego limitu. Do celów raportowych można też przeliczyć sumę na godziny dziesiętne:
= SUM(B2:B6) * 24
To zwróci 40,0 zamiast 40:00, czyli zwykłą liczbę, która dobrze sprawdza się w dalszych obliczeniach, takich jak mnożenie, dzielenie czy wizualizacje.
Jak obliczyć średni czas w Excelu
Excel oblicza średni czas tak jak inne liczby, używając funkcji AVERAGE(); problemy zwykle wynikają z formatowania, które utrudnia odczytanie właściwych wyników.
Logika jest następująca:
= AVERAGE(B2:B8)
Jeśli komórka wynikowa ma format „Ogólne”, zobaczy Pan/Pani coś w rodzaju 0,354. Proszę zastosować format h:mm, a wyświetli się 8:30. Do średnich proszę używać h:mm (bez nawiasów), ponieważ rzadko przekraczają 24 godziny.

Komórka B6 może początkowo wyświetlać 0,057292, ale po sformatowaniu jako h:mm wynik to 1:22:30 (1 godzina, 22 minuty i 30 sekund).

Jak wspomniano w sekcji o czasie upływu, w tej sytuacji również ma zastosowanie format [h]:mm.
Mogą się też zdarzyć sytuacje, w których zbiory danych zawierają puste komórki; Excel automatycznie je ignoruje przy obliczaniu średnich, więc jeśli są siedem wierszy danych i dwie puste komórki, Excel liczy pięć.
Jeśli jednak komórka zawiera 0, Excel ją uwzględni, co może wpływać na wynik. W takiej sytuacji warto użyć funkcji AVERAGEIF() lub zastosować ją do średnich warunkowych (gdy potrzebna jest średnia dla wierszy większych, mniejszych lub równych określonej wartości).
= AVERAGEIF(A2:A10, “>0”)
Częste błędy przy obliczaniu czasu w Excelu
Istnieje kilka częstych błędów, które mogą wystąpić przy obliczaniu czasu w Excelu. Oto niektóre z nich oraz wskazówki, jak sobie z nimi radzić:
Ujemne wartości czasu lub #######
######## oznacza, że kolumna jest zbyt wąska, aby wyświetlić wynik; proszę ją poszerzyć, a problem zniknie. Z kolei wartość ujemna zwykle oznacza, że zamieniono miejscami komórki początkową i końcową albo brakuje dat przy obliczeniach obejmujących noc.
Można to naprawić tak:
= IF(B2 < A2, B2 + 1 - A2, B2 - A2)
Działanie: jeśli czas początkowy to 6:00 PM, a końcowy 2:00 AM, B2 < A2 sprawdza, czy godzina końcowa jest mniejsza od początkowej i jeśli tak, dodaje jeden pełny dzień (1); w przeciwnym razie odejmuje standardowo.
Nieprawidłowe formatowanie
Jeśli suma wydaje się mniejsza niż oczekiwana lub nie wygląda wiarygodnie, można to rozwiązać, stosując właściwe formatowanie ([h]:mm), jak wspomniałem wcześniej.
Tekst vs. wartości czasu
Jeśli czas zostanie wpisany jako tekst (zwykle wyrównany do lewej lub wpisany z poprzedzającym apostrofem), każde obliczenie zakończy się niepowodzeniem. Można przekonwertować tekst na prawdziwą wartość czasu za pomocą: = TIMEVALUE(A2), a następnie sformatować komórkę jako h:mm.
Zamieszanie z przekroczeniem 24 godzin
Gdy SUM() zwraca małą liczbę, to zwykle kwestia formatowania, a nie formuły. Proszę zastosować [h]:mm do komórki z sumą, co rozwiąże problem.
Najlepsze praktyki dotyczące obliczeń czasu w Excelu
Kilka rekomendowanych praktyk:
-
Proszę sprawdzić format komórki, zanim uzna Pan/Pani, że formuła jest błędna. Większość błędnych wyników czasu to problemy z wyświetlaniem, a nie z obliczeniami.
-
Używać
[h]:mmdla każdej komórki z sumą lub łącznym wynikiem. Używaćh:mmdla pojedynczych wpisów w obrębie jednego dnia. -
Nie wprowadzać wartości czasu jako tekstu. Proszę wpisać 8:30 i pozwolić, by Excel rozpoznał to automatycznie. Unikać wiodących apostrofów lub etykiet tekstowych mieszanych z danymi czasu.
-
Uwzględniać daty w obliczeniach obejmujących północ. Wartość zawierająca tylko czas nie ma pojęcia o następnym dniu.
-
Przed użyciem czasu we wzorach finansowych lub stawek przeliczać go na godziny dziesiętne. Proszę pomnożyć wartość czasu przez 24, aby uzyskać zwykłą liczbę, a następnie użyć jej w mnożeniu lub dzieleniu.
-
Zachowywać spójne formaty czasu w całym arkuszu. Mieszanie AM/PM i zapisu 24‑godzinnego w jednej kolumnie to gotowy problem przy przyszłym debugowaniu.
Zakończenie
Obliczanie czasu w Excelu nie jest skomplikowane, gdy zrozumie się, że to po prostu ułamek doby.
Scenariusze, które omówiliśmy — różnica czasu, czas upływu, okresy wielodniowe, tygodniowe sumy, średnie — sprowadzają się do tych samych operacji podstawowych: odejmowania, dodawania i formatowania. Formatowanie to etap, który większość poradników pomija, a który jest źródłem największego zamieszania.
Jeśli chce Pan/Pani pójść dalej z Excelem, nasza ścieżka Excel Fundamentals to dobrze uporządkowana droga, która obejmuje funkcje, typy danych oraz pracę ze zbiorami danych w Excelu.
FAQs
Dlaczego po odejmowaniu Excel pokazuje ułamek zamiast czasu?
Excel przechowuje czas jako dziesiętny ułamek doby i przy właściwym formatowaniu [h]:mm wyświetla go poprawnie.
Jaka jest różnica między `[h]:mm` a `h:mm`?
[h]:mm wyświetla łączną liczbę godzin bez ograniczeń, podczas gdy h:mm zawija wynik do zera po 24 godzinach.
Jaka jest różnica między różnicą czasu a czasem upływu w Excelu?
Różnica czasu to odstęp między dwiema godzinami w tym samym dniu, natomiast czas upływu obejmuje zarówno datę, jak i godzinę, np. obliczanie czasu między dwoma znacznikami czasu w wielu dniach.
Jak uzyskać łączną liczbę godzin między dwiema datami?
Proszę użyć =(End_Date-Start_Date) * 24. Zwróci to łączną liczbę godzin jako zwykłą liczbę dziesiętną.
Jak poradzić sobie z obliczeniami czasu, które przechodzą przez północ?
Proszę użyć =IF(B2<A2, B2+1-A2, B2-A2). +1 dodaje pełny dzień, aby zniwelować nocną przerwę.