Excel'de olay sürelerini ve aralıkları hesaplama

Kerem Aydın·13 Temmuz 2026·⏱4 dk

Excel'de iki tarih veya saat arasındaki farkı hesaplamak için basit bir çıkarma formülü kullanın: =Bitiş - Başlangıç. Kilit nokta, sonuç hücresini doğru şekilde biçimlendirmektir. 24 saati aşan toplam saatleri göstermek için [ss]:dd (veya İngilizce sürümde [hh]:mm) biçimini uygulayın; aksi takdirde sayaç 24 saatte sıfırlanır.

Tarih ve saatle çalışma mekaniği

Tüm hesaplamaların temeli, programın verileri dahili olarak temsil etme şeklidir. Excel tarihleri tam sayı sıra numaraları olarak (1, 1 Ocak 1900'dür), saatleri ise bir günün ondalık kesri olarak saklar.

  • 1 gün = 1 (tam sayı).
  • 12 saat = 0,5 (günün yarısı).
  • 1 saat = 1/24 ≈ 0,04167.
  • 1 dakika = 1/(24*60) ≈ 0,00069.

Bir tarihi diğerinden çıkardığınızda, program aslında iki sayıyı çıkarır. Sonuç, zaman içeriyorsa ondalıklı, yalnızca günleri içeriyorsa tam sayı olabilir. Sorun yalnızca bu sayının kullanıcıya görüntülenmesi aşamasında ortaya çıkar.

Ana kural: Fark 24 saati aşıyorsa, standart saat biçimi sayacı "sıfırlayacak" ve 24'e bölümünden kalanı gösterecektir. Tam süreyi (örneğin 50 saat) görmek için biçimde mutlaka köşeli parantez kullanın: [ss]:dd.

Temel hesaplama formülleri

Farkı elde etmenin en güvenilir yolu, hücre içeriğini doğrudan çıkarmaktır. Kaynak verilerin sistem tarafından tarih olarak tanındığından, metin olarak algılanmadığından emin olun.

Gün cinsinden fark

Tam gün sayısını öğrenmeniz gerekiyorsa: =B2 - A2 B2 bitiş tarihi, A2 başlangıç tarihidir. Sonuç hücresi biçimi: Genel veya Sayı.

Saat ve dakika cinsinden fark

Başlangıç ve bitiş zamanlarını dikkate alarak kesin aralığı elde etmek için: =B2 - A2 Sonuç hücresi biçimi: [ss]:dd veya [ss]:dd:ss.

Negatif değer hatası: Bitiş tarihi başlangıç tarihinden küçükse (örneğin, vardiya bugün başlayıp yarın bitmiş ancak ters kaydedilmişse), Excel ##### hatası döndürür. Bundan kaçınmak için sayının mutlak değerini almak üzere ABS işlevini kullanın veya veri girişi mantığını kontrol edin: =ABS(B2-A2).

Belirli ölçü birimlerine dönüştürme

Bazen daha ileri matematiksel işlemler (örneğin maaş hesabı) için "saf" saat veya dakika sayısı elde etmek gerekir. Bu durumda çıkarma sonucu bir dönüşüm katsayısıyla çarpılır:

BirimFormülMantık
Saat=(B2-A2)*24Gün × 24 saat
Dakika=(B2-A2)2460Gün × 1440 dakika
Saniye=(B2-A2)2460*60Gün × 86400 saniye

Önemli: Bu formüle sahip hücre Zaman olarak değil, Sayı olarak biçimlendirilmelidir.

Görüntüleme biçimlerinin ayarlanması

Doğru hücre biçimi seçimi, hesaplama sorunlarının %90'ını çözer. Ayar, Giriş sekmesi → Sayı grubu → açılır liste veya biçim penceresinin çağrılması (Ctrl+1) yolunda bulunur.

Popüler biçimlerin tablosu

GörevBiçim koduÖrnek çıktıNot
Tam süre (saat > 24)[ss]:dd35:45Köşeli parantezler günün sıfırlanmasını engeller
Gün, saat ve dakikag "gn." ss "s." dd "d."2 gn. 5 s. 30 d.Tırnak içindeki metin açıklamaları
Yalnızca saat (ondalık)0,0053,50Finansal hesaplamalar için
Standart gün saatiss:dd11:4524 saatten sonra sıfırlanır

Metin içeren bir biçim (günler, saatler) oluşturmak için, biçimlendirme penceresindeki "Tür" alanına kodu manuel olarak girin. g harfi günü, ss saati, dd dakikayı temsil eder. Herhangi bir statik metin çift tırnak içine alınır.

İş süresi ve NETWORKDAYS ile çalışma

Görev, iki tarih arasındaki iş saatlerini (hafta sonları ve tatiller hariç) hesaplamaksa, basit çıkarma yetersizdir. NETWORKDAYS (ÇALIŞMA.GÜNÜ.SAYISI) işlevini kullanın.

İş saatlerini hesaplama formülü: =(NETWORKDAYS(A2; B2) - 1) * (TIME(17;0;0) - TIME(9;0;0)) + ... Bu mantık, eksik günler için karmaşıktır.

Standart bir çalışma programı (örneğin 9'dan 18'e) için daha basit ve evrensel bir yaklaşım:

  1. Tam iş günlerini sayın: =NETWORKDAYS(BAŞLANGIÇ_TARİHİ; BİTİŞ_TARİHİ).
  2. İş gününün uzunluğuyla (saat cinsinden) çarpın.
  3. İlk ve son günün eksik saatlerini manuel olarak veya ek EĞER koşulları aracılığıyla ekleyin/çıkarın.

Molalar ve gece vardiyalarını içeren karmaşık programlar için, dönemi ayrı günlere bölerek yardımcı sütunlar kullanmak genellikle daha kolaydır.

Sık yapılan hatalar ve çözümleri

  1. Sonuç ##### olarak görüntüleniyor:

    • Neden: Sütun çok dar veya negatif saat elde edilmiş.
    • Çözüm: Sütunu genişletin. Saat negatifse (bitiş başlangıçtan önceyse), formülü değiştirin veya dosya ayarlarında 1904 tarih sistemini etkinleştirin (Dosya → Seçenekler → Gelişmiş).
  2. Formül 0 veya garip bir tarih döndürüyor:

    • Neden: Kaynak hücreler metin olarak kaydedilmiş.
    • Çözüm: Hizalamayı kontrol edin (metin genellikle sola dayalıdır). "Sütunlara Dönüştür" özelliği veya DATEVALUE (TARİHSAYISI) işlevi aracılığıyla metni tarihe dönüştürün.
  3. Saat toplamı 24'ten sonra "sıfırlanıyor":

    • Neden: [ss]:dd yerine ss:dd biçimi kullanılmış.
    • Çözüm: Köşeli parantezli özel biçimi uygulayın.

SSS

Çalışma kıdemini yıl, ay ve gün cinsinden nasıl hesaplarım? Gizli ancak güçlü DATEDIF (TARİHFARKI) işlevini kullanın. Örnek: =DATEDIF(A2; B2; "y") & " yıl, " & DATEDIF(A2; B2; "ym") & " ay, " & DATEDIF(A2; B2; "md") & " gün" Burada A2 işe başlama tarihi, B2 mevcut tarihtir.

Farklı hücrelerden gelen saatleri toplayabilir miyim? Evet, normal =TOPLA(A1:A10) işlevi doğru çalışır. Önemli olan, toplam hücresine [ss]:dd biçimini uygulamayı unutmamaktır; aksi takdirde 24 saati aşan toplamlar yanlış görüntülenir.

Genel süreden 30 dakikalık öğle molasını nasıl çıkarırım? Sonuçtan 30 dakikaya karşılık gelen kesri çıkarın. Bir gün = 1 olduğundan, 30 dakika = 30/(24*60) = 1/48'dir. Formül: =(Bitiş - Başlangıç) - TIME(0;30;0) veya =(Bitiş - Başlangıç) - 1/48.