In Outlook 2013 ist die Standard Erinnerungszeit für ganztägige Termine 0,5 Tage, bei Outlook 2010 sogar 16 Stunden. Das ist bei Terminen am Montag manchmal “etwas” ungünstig.
Leider gibt es keine direkte Einstellungsmöglichkeit um die Standard Einstellung anzupassen, aber es funktioniert auch ganz gut mit einem kleinen Makro:
Public WithEvents olAppointmentItems As Outlook.Items
Private Sub Application_Startup()
Set olAppointmentItems = ThisOutlookSession.Session.GetDefaultFolder(olFolderCalendar).Items
End SubPrivate Sub olAppointmentItems_ItemAdd(ByVal Item As Object)
Dim appointment As AppointmentItem
Set appointment = ItemIf appointment.AllDayEvent = True Then
appointment.ReminderMinutesBeforeStart = 120 ’60 Minuten * 2
appointment.Save
End If
End Sub
Um das Makro zu aktiveren, muss zunächst in den Outlook Optionen das Menüband “Entwicklertools” eingeblendet werden
Sobald das Menüband aktiviert wurde, findet sich unter den Entwicklertools das Punkt “Visual Basic”
Unter dem Punkt “ThisOutlookSession” kann nun das obenstehende Makro eingefügt werden (Speichern nicht vergessen)
Unter dem Punkt “Makrosicherheit” muss jetzt noch die Sicherheitsstufe herabgesetzt werden (oder das Makro muss signiert werden)
Nach einem Neustart von Outlook ist das Makro aktiv, wenn jetzt ein neuer ganztägiger Termin erstellt wird, wird nach dem Speichern des Termins die Erinnerungszeit auf 2 Stunden gesetzt. Der Wert lässt sich in der Zeile
appointment.ReminderMinutesBeforeStart = 120 ’60 Minuten * 2
anpassen.
Ich habe in meinem Outlook 2 Kalender, daher habe ich das Makro noch etwas erweitert um bei beiden Kalendern die Erinnerung zu ändern:
Das Makro sieht dann zum Beispiel so aus:
Public WithEvents olAppointmentItems As Outlook.Items
Public WithEvents olAppointmentItems2 As Outlook.ItemsPrivate Sub Application_Startup()
Set olAppointmentItems = ThisOutlookSession.Session.GetDefaultFolder(olFolderCalendar).Items
Set olAppointmentItems2 = ThisOutlookSession.Session.GetDefaultFolder(olFolderCalendar).Folders(„Privat“).Items
End SubPrivate Sub olAppointmentItems_ItemAdd(ByVal Item As Object)
Dim appointment As AppointmentItem
Set appointment = ItemIf appointment.AllDayEvent = True Then
appointment.ReminderMinutesBeforeStart = 120 ’60 Minuten * 2
appointment.Save
End If
End SubPrivate Sub olAppointmentItems2_ItemAdd(ByVal Item As Object)
Dim appointment As AppointmentItem
Set appointment = ItemIf appointment.AllDayEvent = True Then
appointment.ReminderMinutesBeforeStart = 120 ’60 Minuten * 2
appointment.Save
End If
End Sub
Der Name des Kalenders wird in der Zeile
Set olAppointmentItems2 = ThisOutlookSession.Session.GetDefaultFolder(olFolderCalendar).Folders(„Privat“).Items
angegeben. Im übrigen lässt sich auch ein Termin ohne Standard Erinnerung in Outlook 2013 anlegen, dazu muss auf das freie Feld vor der Uhrzeit geklickt werden:
Aber so ganz ohne Erinnerung??? Ich bin da ja sehr vergesslich…
Hallo Frank, Das Makro ist wirklich sehr hilfreich.
Eine Frage hätte ich dazu:
Gibt es auch die Möglichkeit dieses Makro auf den Kalender einer zusätzlich angebundenen 2. Mailbox anzuwenden?
Mfg
H. Krueger