Ga naar hoofdinhoud

Hoe voorkom je dat Outlook te vroeg of te laat herinnert?

Je werkt bijvoorbeeld elke dag van 9 uur tot 00 uur, maar maakt nu om 6 uur een afspraak en voegt daar een herinnering van 00 uur voor toe in Outlook. Dat betekent dat de herinnering om 10 uur werkt voordat uw werk begint. Aan de andere kant kan de herinnering in speciale gevallen om middernacht klinken. Dat is nogal onhandig, en sommige Outlook-gebruikers willen misschien voorkomen dat Outlook te vroeg of te laat eraan herinnert. Hier zal ik een VBA-macro introduceren die u in Outlook kunt oplossen.

Office-tabblad - Schakel bewerken en bladeren met tabbladen in Microsoft Office in, waardoor werken een fluitje van een cent wordt
Kutools voor Outlook - Geef Outlook een boost met meer dan 100 geavanceerde functies voor superieure efficiëntie
Geef uw Outlook 2021 - 2010 of Outlook 365 een boost met deze geavanceerde functies. Geniet van een uitgebreide gratis proefperiode van 60 dagen en verbeter uw e-mailervaring!

Om te voorkomen dat Outlook te vroeg of te laat herinnert, kunt u het volgende doen:

Stap 1: druk op de anders + F11 toetsen om het Microsoft Visual Basic for Applications-venster te openen.

Stap 2: Vouw het Microsoft Outlook-objecten in het linkerdeelvenster en plak de volgende VBA-macro in het DezeOutlookSessie.

VBA: voorkom dat u te vroeg of te laat herinnert in Outlook

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

 

Note: U kunt uw werkperiode specificeren door de volgende parameters in de VBA-code hierboven te wijzigen:
herinneringMaxHour = 20
herinneringMinHour = 9

Stap 3: Sla deze VBA op en start uw Microsoft Outlook opnieuw.

Vanaf nu, wanneer u een afspraak maakt met een herinneringstijd buiten uw werkperiode, zal er een dialoogvenster verschijnen om u eraan te herinneren nadat u op de knop Opslaan en sluiten knop.

Als de herinneringstijd eerder is dan de opgegeven reminderMinHour, klikt u op het Ja in het dialoogvenster zal het de herinneringstijd veranderen en de herinnering laten klinken op de gespecificeerde reminderMinHour.

Als de herinneringstijd later is dan de opgegeven reminderMaxHour, klikt u op het Ja in het dialoogvenster zal het de herinneringstijd veranderen en u eraan herinneren op de opgegeven reminderMaxHour.

Opmerking: Deze VBA-code werkt goed met Outlook 2013, maar niet met Outlook 2010 en 2007.


Beste Office-productiviteitstools

Kutools for Outlook - Meer dan 100 krachtige functies om uw Outlook een boost te geven

🤖 AI Mail-assistent: Directe professionele e-mails met AI-magie: met één klik geniale antwoorden, perfecte toon, meertalige beheersing. Transformeer e-mailen moeiteloos! ...

???? Email Automation: Niet aanwezig (beschikbaar voor POP en IMAP)  /  Plan het verzenden van e-mails  /  Automatische CC/BCC volgens regels bij het verzenden van e-mail  /  Automatisch doorsturen (geavanceerde regels)   /  Begroeting automatisch toevoegen   /  Splits e-mails van meerdere ontvangers automatisch op in individuele berichten ...

📨 email management: Gemakkelijk e-mails herinneren  /  Blokkeer zwendel-e-mails van onderwerpen en anderen  /  Verwijder dubbele e-mails  /  Uitgebreid Zoeken  /  Consolideer mappen ...

📁 Bijlagen ProBatch opslaan  /  Batch losmaken  /  Batchcompressie  /  Automatisch opslaan   /  Automatisch loskoppelen  /  Automatisch comprimeren ...

???? Interface-magie: 😊Meer mooie en coole emoji's   /  Verhoog uw Outlook-productiviteit met weergaven met tabbladen  /  Minimaliseer Outlook in plaats van te sluiten ...

???? Wonderen met één klik: Beantwoord iedereen met inkomende bijlagen  /   Antiphishing-e-mails  /  🕘Toon de tijdzone van de afzender ...

👩🏼‍🤝‍👩🏻 Contacten en agenda: Batchcontacten toevoegen uit geselecteerde e-mails  /  Splits een contactgroep in individuele groepen  /  Verwijder verjaardagsherinneringen ...

Over 100 Eigenschappen Wacht op je verkenning! Klik hier om meer te ontdekken.

 

 

Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations