Skip to main content

Outlook'ta bir randevu veya toplantı için harcanan saat/gün/haftayı nasıl sayarsınız?

Author: Kelly Last Modified: 2025-08-07

Diyelim ki Outlook'taki bir takvimde birçok randevu ve toplantı var. Ve şimdi bu randevu ve toplantılar için harcanan saat/gün/haftayı saymak istiyorsunuz, bir fikriniz var mı? Bu makale, size yardımcı olacak bir VBA tanıtacaktır.

VBA ile bir randevu veya toplantı için harcanan saat/gün/haftayı sayın


VBA ile bir randevu veya toplantı için harcanan saat/gün/haftayı sayın

Bu yöntem, Outlook'taki belirli bir randevu veya toplantı için harcanan saat veya dakikayı sayacak bir VBA tanıtacaktır. Lütfen şu adımları izleyin:

1. Takvim klasörüne geçin ve harcanan saatleri sayacağınız randevu veya toplantıyı seçin.

2. Microsoft Visual Basic for Applications penceresini açmak için Alt + F11 tuşlarına aynı anda basın.

3. Ekle > Modül'e tıklayın ve ardından aşağıdaki VBA kodunu açılan Modül penceresine yapıştırın.

VBA: Outlook'ta bir randevu veya toplantı için harcanan saat/dakikayı sayma

Sub CountTimeSpent()
Dim oOLApp As Outlook.Application
Dim oSelection As Outlook.Selection
Dim oItem As Object
Dim iDuration As Long
Dim iTotalWork As Long
Dim iMileage As Long
Dim iResult As Integer
Dim bShowiMileage As Boolean

bShowiMileage = False

iDuration = 0
iTotalWork = 0
iMileage = 0

On Error Resume Next

    Set oOLApp = CreateObject("Outlook.Application")
Set oSelection = oOLApp.ActiveExplorer.Selection

    For Each oItem In oSelection
If oItem.Class = olAppointment Then
iDuration = iDuration + oItem.Duration
iMileage = iMileage + oItem.Mileage
ElseIf oItem.Class = olTask Then
iDuration = iDuration + oItem.ActualWork
iTotalWork = iTotalWork + oItem.TotalWork
iMileage = iMileage + oItem.Mileage
ElseIf oItem.Class = Outlook.olJournal Then
iDuration = iDuration + oItem.Duration
iMileage = iMileage + oItem.Mileage
Else
iResult = MsgBox("Please select some Calendar, Task or Journal items at first!", vbCritical, "Items Time Spent")
Exit Sub
End If
Next

Dim MsgBoxText As String
MsgBoxText = "Total time spent: " & vbNewLine & iDuration & " minutes"

If iDuration > 60 Then
MsgBoxText = MsgBoxText & HoursMsg(iDuration)
End If

If iTotalWork > 0 Then
MsgBoxText = MsgBoxText & vbNewLine & vbNewLine & "Total work recorded; " & vbNewLine & iTotalWork & " minutes"

If iTotalWork > 60 Then
MsgBoxText = MsgBoxText & HoursMsg(iTotalWork)
End If
End If

If bShowiMileage = True Then
MsgBoxText = MsgBoxText & vbNewLine & vbNewLine & "Total iMileage; " & iMileage
End If

    iResult = MsgBox(MsgBoxText, vbInformation, "Items Time spent")

ExitSub:
Set oItem = Nothing
Set oSelection = Nothing
Set oOLApp = Nothing
End Sub

Function HoursMsg(TotalMinutes As Long) As String
Dim iHours As Long
Dim iMinutes As Long
iHours = TotalMinutes \ 60
iMinutes = TotalMinutes Mod 60
HoursMsg = " (" & iHours & " Hours and " & iMinutes & " Minutes)"
End Function

4. Bu VBA'yı çalıştırmak için F5 tuşuna basın veya Çalıştır düğmesine tıklayın.

Ve şimdi bir diyalog kutusu açılır ve seçilen randevu/toplantının kaç saat/dakika harcadığını gösterir. Ekran görüntüsüne bakın:

using vba to count hours/days/weeks spent on an appointment or meeting in Outlook

Not: Bu VBA koduyla aynı anda birden fazla randevu veya toplantıyı seçebilir ve toplam harcanan saat/dakikayı sayabilirsiniz.


İlgili Makaleler

Outlook'taki bir klasördeki toplam konuşma sayısını sayma

Outlook'taki seçili e-postalardaki toplam ek sayısını sayma

Outlook'taki Alıcı, Kopya ve Gizli Bilgi alanlarındaki alıcı sayısını sayma

Outlook'ta gönderene göre e-posta sayısını sayma


En İyi Ofis Verimlilik Araçları

Flaş Haber: Kutools for Outlook Ücretsiz Sürümü Yayında!

Yepyeni Kutools for Outlook'u100’den fazla harika özellikle deneyimleyin! Hemen indirin!

🤖 Kutools AI : Gelişmiş yapay zeka teknolojisi sayesinde e-postalarınızı zahmetsizce yönetir; yanıtlama, özetleme, optimize etme, genişletme, çeviri ve e-posta oluşturma işlemlerini kolayca yapar.

📧 E-posta Otomasyonu: Otomatik Yanıt (POP ve IMAP için Mevcut) / E-postaları Zamanla Gönder / Gönderirken Kural ile Otomatik CC/BCC / Otomatik Yönlendirme (Gelişmiş Kurallar) / Otomatik Selamlama Ekle / Birden Fazla Alıcılı E-postaları Otomatik Olarak Bireysel E-postalara Böl ...

📨 E-posta Yönetimi: E-postayı Geri Çağır / Konu ve Diğerlerine Göre Sahtekarlık E-postalarını Engelle / Yinelenen E-postaları Sil / Gelişmiş Arama / Klasörleri düzenle ...

📁 Ekler Pro: Toplu Kaydet / Toplu Ayır / Toplu Sıkıştır / Otomatik Kaydet / Otomatik Ayır / Otomatik Sıkıştır ...

🌟 Arayüz Sihri: 😊Daha Fazla Şık ve Güzel Emoji / Önemli e-postalar geldiğinde seni uyarır / Outlook’u Kapatmak Yerine Küçült ...

👍 Tek Tıkla Harikalar: Tümüne Eklerle Yanıtla / Kimlik Avı (Phishing) E-postalarına Karşı Koruma / 🕘Gönderenin Saat Dilimini Göster ...

👩🏼‍🤝‍👩🏻 Kişiler & Takvim: Seçili E-postalardan Toplu Kişi Ekle / Bir Kişi Grubunu Bireysel Gruplara Böl / Doğum günü hatırlatıcısını kaldır ...

Kutools'u tercih ettiğiniz dilde kullanın – İngilizce, İspanyolca, Almanca, Fransızca, Çince ve40’tan fazla dil desteği!

Kutools for Outlook'un tüm özelliklerini tek tıkla hemen açın. Beklemeyin, şimdi indirip verimliliğinizi artırın!

kutools for outlook features1 kutools for outlook features2