Skip to main content

Outlook'un çok erken veya çok geç hatırlatmasını nasıl engelleyebilirim?

Author: Kelly Last Modified: 2025-08-07

Örneğin, her gün sabah 9:00'dan akşam 6:00'a kadar çalışıyorsunuz, ancak şu anda saat 10:00'da bir randevu oluşturuyorsunuz ve Outlook'ta bunun için 2 saatlik bir hatırlatıcı ekliyorsunuz. Bu, hatırlatıcının işe başlamadan önce saat 8:00'de çalışacağı anlamına gelir. Öte yandan, hatırlatıcı özel durumlarda gece yarısı çalabilir. Bu oldukça rahatsız edici olabilir ve bazı Outlook kullanıcıları, Outlook'un çok erken veya çok geç hatırlatmasını önlemek isteyebilir. Burada sizin için bu sorunu çözmek üzere bir VBA makrosu tanıtacağım.

Office Tab - Sekmeli düzenleme ve Microsoft Office'de gezinmeyi etkinleştirin, işleri kolaylaştırın.
Kutools for Outlook'u şimdi açın ve sınırsız erişimle 100'den fazla özelliği hemen kullanmaya başlayın.
Outlook 2024 - 2010 veya Outlook 365'inizi bu gelişmiş özellikleri kullanarak güçlendirin. 100'den fazla güçlü özelliğin keyfini çıkarın ve e-posta deneyiminizi geliştirin!

Outlook'un çok erken veya çok geç hatırlatmasını önlemek için aşağıdaki adımları izleyebilirsiniz:

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

Adım 2: Sol bölmedeki Microsoft Outlook Nesnelerini genişletin ve aşağıdaki VBA makrosunu ThisOutlookSession içine yapıştırın.

VBA: Outlook'ta çok erken veya çok geç hatırlatmayı önleme

Public WithEvents g_CalendarItems As Outlook.Items
Public Sub Application_Startup()
Set g_CalendarItems = Outlook.Session.GetDefaultFolder(olFolderCalendar).Items
End Sub
Private Sub g_CalendarItems_ItemAdd(ByVal Item As Object)
CheckReminder Item
End Sub
Private Sub g_CalendarItems_ItemChange(ByVal Item As Object)
CheckReminder Item
End Sub
Sub CheckReminder(ByVal Item As Object)
On Error GoTo ProcError
Dim strProcName As String
strProcName = "CheckReminder"
reminderMaxHour = 20
reminderMinHour = 9
Dim aAptItem As Outlook.AppointmentItem
Set aAptItem = Item
If aAptItem.ReminderSet Then
Dim reminderDate As Date
reminderDate = aAptItem.Start - aAptItem.ReminderMinutesBeforeStart / (24 * 60)
reminderHour = (reminderDate - Int(reminderDate)) * 24
tolerance = 0.01 ' avoid floating point small diffs (little bit less than a min)
If reminderHour < reminderMinHour - tolerance Or reminderHour > reminderMaxHour + tolerance Then
' best guess, first try to advance to next minHour
reminderDateSuggestion = reminderDate + (reminderMinHour - reminderHour) / 24
' verify if first guess is valid
If reminderHour < reminderMinHour - tolerance And reminderDateSuggestion <= aAptItem.Start Then
' OK, first guess is valid, keep it
ElseIf reminderHour > reminderMaxHour Then
' go back to max hour (same day)
reminderDateSuggestion = reminderDate - (reminderHour - reminderMaxHour) / 24
Else
' go back to max hour (previous day)
reminderDateSuggestion = reminderDate - (reminderHour + 24 - reminderMaxHour) / 24
End If
rep = MsgBox("The Reminder time is out of specified working period. Would you like to change the Reminder time?" , vbQuestion + vbYesNoCancel)
If rep = vbCancel Then
aAptItem.Display
ElseIf rep = vbYes Then
aAptItem.ReminderMinutesBeforeStart = (aAptItem.Start - reminderDateSuggestion) * 24 * 60
aAptItem.Save
End If
End If
End If
ProcExit:
Exit Sub
ProcError:
MsgBox "Unanticipated error " & Err.Number & " " & Err.Description & vbCrLf & "In procedure: " & strProcName
End Sub

 

Not: Yukarıdaki VBA kodundaki aşağıdaki parametreleri değiştirerek çalışma sürenizi belirleyebilirsiniz:
reminderMaxHour = 20
reminderMinHour = 9

Adım 3: Bu VBA'yi kaydedin ve Microsoft Outlook'unuzu yeniden başlatın.

Şimdi itibaren, belirttiğiniz çalışma süresi dışında bir hatırlatıcı ile randevu oluşturduğunuzda, Kaydet ve Kapat düğmesine tıkladıktan sonra size bir uyarı kutusu açılacaktır.

the screenshot of step about preventing outlook reminding too early or too late

Hatırlatma saati belirlenen reminderMinHour değerinden daha erken ise, iletişim kutusundaki Evet'e tıklayın; bu, hatırlatma saatini değiştirecek ve belirlenen reminderMinHour zamanında ses çıkaracaktır.

Hatırlatma saati belirlenen reminderMaxHour değerinden daha geç ise, iletişim kutusundaki Evet'e tıklayın; bu, hatırlatma saatini değiştirecek ve belirlenen reminderMaxHour zamanında sizi uyaracaktır.

Not: Bu VBA kodu Outlook 2013 ile iyi çalışıyor, ancak Outlook 2010 ve 2007 ile çalışmıyor.


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