Excel'de aylık çalışma saatleri nasıl hesaplanır?
Birçok kuruluşta çalışanlar, günde 8 saat ve haftada 5 gün gibi standart bir çalışma takvimine uyar. Aylık toplam çalışma saatinin doğru hesaplanması, bordro işlemleri, proje takibi ve iş gücü yönetimi açısından kritik öneme sahiptir. Ancak her ay için bu süreleri manuel olarak toplamak — özellikle hafta sonları, resmî tatiller veya değişken çalışma programları gibi faktörler dikkate alındığında — hem hata yapmaya açık hem de zaman alıcı olabilir. Excel, bu süreci kolaylaştırmak ve otomatikleştirmek için pratik araçlar ve yöntemler sunarak işlemlerinizde doğruluk ve verimlilik sağlar.
Excel'de aylık çalışma saatlerini hesaplamak için aşağıda farklı veri yapılarına ve ihtiyaçlara uygun çeşitli etkili çözümler yer almaktadır:
Formüllerle aylık toplam çalışma saatlerini hesaplayın
VBA Kodu – Birden fazla satır için aylık çalışma saatlerini otomatik olarak hesaplayın
Formüllerle aylık toplam çalışma saatlerini hesaplayın
Excel’in formül işlevleri, başlangıç ve bitiş tarihlerini ile günlük çalışma saati kotasını bildiğinizde aylık toplam çalışma saatlerini hesaplamak için basit ve güvenilir bir çözüm sunar. Bu yöntem, her günün sabit bir çalışma programına sahip olduğu ve hafta sonlarını (isteğe bağlı olarak resmi tatilleri de) dikkate almak istediğiniz durumlarda en iyi sonuçları verir. Hesaplamayı şu şekilde ayarlayabilirsiniz:
1. Sonucun görüntülenmesini istediğiniz boş bir hücre seçin ve aşağıdaki formülü girin:
=NETWORKDAYS(A2,B2) *8 Formülü yazdıktan sonra Enter tuşuna basın. Başlangıçta sonuç, tarih formatında görünebilir. Aşağıdaki ekran görüntüsü bunu göstermektedir:

2. Değeri sayı olarak (çalışma saati cinsinden) görüntülemek için formül sonucunun bulunduğu hücreyi seçin. Ardından Giriş sekmesinde Sayı Biçimi açılır menüsünü bulun ve Genel seçeneğini belirleyin. Hücre artık aşağıdaki gibi toplam çalışma saat sayısını düz bir sayı olarak gösterecektir:

İpuçları: Tatilleri içeren dönemleri doğru yansıtmak için formülünüzde tatil aralığını belirtin ve bu günleri otomatik olarak hariç tutun. Şunu kullanın:
=NETWORKDAYS(A2,B2, C2:C4) *8 Burada A2 Başlangıç Tarihi’dir, B2 Bitiş Tarihi’dir ve C2:C4 hariç tutmak istediğiniz tatil tarihlerini listeler. Hücreyi yukarıda açıklandığı gibi Genel biçiminde ayarlayın.

Not: Hücre referanslarını (örneğin A2, B2, C2:C4) verilerinizin konumuna göre ayarlayın. Bu yöntem, standart günlük çalışma saatlerine sahip durumlar için en iyi şekilde çalışır. Çalışanlar yarı zamanlı çalışıyor ya da günlük çalışma saatleri değişiyorsa, formülü uyarlamak veya aşağıdaki alternatif yöntemlerden birini kullanmanız gerekebilir.
Formül kullanmanın bir avantajı, tarihleri veya tatilleri değiştirdiğinizde otomatik olarak güncellenmesidir. Ancak birden fazla çalışanı veya daha karmaşık devamsızlık kayıtlarını içeren veri kümeleri için aşağıdaki gelişmiş çözümler daha kullanışlı olabilir.
VBA Kodu – Birden fazla satır için aylık çalışma saatlerini otomatik olarak hesaplayın
Çalışma sayfanızda birden fazla çalışan veya satır kaydı varsa ve her satır farklı dönemlere ya da değişen başlangıç ve bitiş tarihlerine sahipse, formülleri satır satır elle girmek oldukça zahmetli hale gelir. Bir VBA makrosu kullanmak, her satır için çalışma saatlerini otomatik olarak topluca hesaplamanıza, zamandan tasarruf etmenize ve manuel hataları en aza indirmenize olanak tanır.
Bu çözüm, her satırın bir çalışanı veya ayrı bir çalışma dönemini temsil ettiği ve Başlangıç Tarihi, Bitiş Tarihi ile isteğe bağlı Tatiller sütunlarını içeren bir tablonuz olduğunda özellikle kullanışlıdır. Aşağıdaki makro tüm satırları tarayacak ve her kayıt için çalışma saatlerini otomatik olarak dolduracaktır.
1. Visual Basic for Applications düzenleyicisini açmak için Geliştirici Araçları > Visual Basic öğesine tıklayın. Yeni pencerede Ekle > Modül seçeneğine tıklayıp aşağıdaki VBA kodunu kod alanına yapıştırın:
Sub CalculateMonthlyWorkingHours()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Dim startCol As String, endCol As String, holidayCol As String, resultCol As String
Dim holidays As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set ws = Application.ActiveSheet
' Adjust these column letters as needed
startCol = "A" ' Start Date in Column A
endCol = "B" ' End Date in Column B
holidayCol = "C" ' Holiday list in Column C (optional; can be blank)
resultCol = "D" ' Results in Column D
lastRow = ws.Cells(ws.Rows.Count, startCol).End(xlUp).Row
For i = 2 To lastRow
If ws.Cells(i, startCol).Value <> "" And ws.Cells(i, endCol).Value <> "" Then
If ws.Cells(i, holidayCol).Value <> "" Then
holidays = Split(ws.Cells(i, holidayCol), ",")
ws.Cells(i, resultCol).Value = WorksheetFunction.NetworkDays(ws.Cells(i, startCol), ws.Cells(i, endCol), holidays) * 8
Else
ws.Cells(i, resultCol).Value = WorksheetFunction.NetworkDays(ws.Cells(i, startCol), ws.Cells(i, endCol)) * 8
End If
Else
ws.Cells(i, resultCol).Value = ""
End If
Next i
End Sub Notlar ve talimatlar:
- Çalışma sayfanızın düzenine uygun şekilde sütun harflerini ()startCol, endCol, holidayCol, resultCol) gerektiği gibi ayarlayın.
- holidayCol sütunu, virgülle ayrılmış tarihler içermelidir; örneğin 7/3/2025 , 7/18/2025. Gerekmiyorsa boş bırakabilirsiniz.
- Bu makro, verilerin başlıktan hemen sonra 2. satırdan itibaren başladığını varsayar.
2. Makroyu çalıştırmak için
düğmesine tıklayın veya modül seçiliyken F5tuşuna basın. Kod, sonuç sütunundaki tüm satırlar için otomatik olarak aylık toplam çalışma saatlerini hesaplayıp dolduracaktır. Bir hata oluşursa, veri referanslarınızın ve tarih formatınızın doğru olduğundan emin olun.
Bu yöntem, özellikle büyük çalışan listeleri veya çok satırlı çizelge verileri üzerindeki hesaplamaları otomatikleştirmede son derece etkilidir; tutarlılığı garanti eder ve eksik kayıtlar riskini en aza indirir. Veri yapınız daha esnekse ya da günlük devamsızlık kayıtlarını özetlemek istiyorsanız, aşağıda açıklanan PivotTable kullanımını değerlendirmeyi düşünebilirsiniz.
En İyi Office Üretkenlik Araçları
Excel becerilerinizi Kutools for Excel ile güçlendirin ve hiç yaşanmamış bir verimlilik deneyimi yaşayın.Kutools for Excel, üretkenliği artırmak ve Zamanı Kaydet için 300’den fazla gelişmiş özelliğe sahiptir.İhtiyacınız olan özelliği hemen edinmek için buraya tıklayın…
Office Tab, Office uygulamalarına sekmeli arayüz getirir ve işinizi çok daha kolay hale getirir
- Word, Excel, PowerPoint, Publisher, Access, Visio ve Project’te sekmeli düzenleme ve okumayı etkinleştirin.
- Birden fazla belgeyi aynı pencerenin yeni sekmelerinde açın ve oluşturun, yeni pencerelerde değil.
- Günlük üretkenliğinizi %50 artırır ve size her gün yüzlerce fare tıklamasından tasarruf sağlar!
Tüm Kutools eklentileri, tek bir yükleyiciyle!
Kutools for Office paketi, Excel, Word, Outlook ve PowerPoint için eklentilerin yanı sıra Office Tab Pro’yu da içerir; böylece Office uygulamalarında çalışan ekipler için ideal bir çözümdür.
- Hepsi bir arada paket— Excel, Word, Outlook ve PowerPoint eklentileri + Office Tab Pro
- Tek yükleyici, tek lisans— birkaç dakikada kurulum (MSI uyumlu)
- Birlikte daha iyi çalışır— Office uygulamaları arasında akıcı üretkenlik
- 30 günlük tam özellikli deneme— kayıt gerekmez, kredi kartı gerekmez
- En iyi fiyat performans— ayrı ayrı eklenti satın almaya göre tasarruf sağlar