Outlook'un çok erken veya çok geç hatırlatmasını nasıl engelleyebilirim?
Ö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.
- Yapay zeka teknolojisiyle e-posta üretkenliğinizi artırın, size hızlı cevap verme, yeni taslaklar oluşturma, mesajları çevirme ve daha fazlasını daha verimli bir şekilde yapma imkanı sağlar.
- Otomatik CC/BCC, kurallara göre Otomatik Yönlendirme ile e-posta göndermeyi otomatikleştirin; Exchange sunucusu gerektirmeden Otomatik Yanıt (Dışarıda) gönderin...
- BCCde olduğunuzda tümünü yanıtla seçeneğini kullandığınızda BCC Uyarısı veya unutulmuş ekler için Eklenti Hatırlatma gibi hatırlatıcılar alın...
- Ekleri İçeren Tümünü Yanıtla, Selamlama veya Tarih & Saat Bilgisini Otomatik Ekleme veya Konu, Birden Fazla E-postayı Yanıtlama gibi özelliklerle e-posta verimliliğini artırın...
- E-postaları geri çağırma, Ek Araçları (Tüm Ekleri Sıkıştır, Tüm Ekleri Otomatik Kaydet...), Yinelenenleri Kaldır ve Hızlı Rapor ile e-posta işlemlerini akıcı hale getirin...
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.

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!
📧 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!

