Email to Torsten Weber
Feed Icon
.NET User Group Leipzig

Vor einigen Tagen habe ich eine Anfrage erhalten, die sich auf Erinnerungen bei Microsoft Outlook und die Anpassung davon bezieht. Bei ganztätigen Terminen setzt Outlook 18 Stunden als Erinnerung, wenn die Option Standarderinnerung per Optionen, Reiter Einstellungen aktiviert ist (Abb. 1). Dabei ist egal, ob 15 Minuten oder ein anderer Wert bei Standarderinnerung eingestellt ist, ganz genauso wie egal ist, wie der Beginn bei Arbeitstagen definiert wird (Abb. 2) – Outlook stellt bei den ganztätigen Terminen immer pauschal 18 Stunden bei der Erinnerung ein (Abb. 3, 4). Das Resümee: Da wurde nicht mitgedacht!

Optionen, Standarderinnerung bei Terminen
Abb. 1.: Optionen, Standarderinnerung bei Terminen

Definition der Arbeitswoche / Beginn & Ende eines Arbeitstages
Abb. 2: Definition der Arbeitswoche / Beginn & Ende eines Arbeitstages

Standarderinnerung, die bei einem Termin automatisch eingestellt wird
Abb. 3: Standarderinnerung, die bei einem Termin automatisch eingestellt wird

Standarderinnerung, die bei einem ganztägigen Ereignis automatisch eingestellt wird
Abb. 4.: Standarderinnerung, die bei einem ganztägigen Ereignis automatisch eingestellt wird

Wie lässt sich diese Problemstellung lösen? Indem bei dem Anlegen ganztätiger Termine die Einstellung von 18 Stunden manuell geändert wird. Klar, aber ist das gute User Experience? Also VBA to the rescue! Folgender VBA-Anwendungscode muss in ThisOutlookSession kopiert und gespeichert werden.

Damit Makros unter Outlook funktionieren, muss die Sicherheit etwas weniger restriktiv gesetzt sein. Das findet sich unter Extras, Makro, Sicherheit, Makrosicherheit. Dort ist der Wert Warnungen für alle Makros bzw. Keine Sicherheitsprüfung für Makros einzustellen (vgl. Abb. 5).

Outlook 2007 – Alle Regeln per Makro ausführen, Makrosicherheit festlegen
Abb. 5: Outlook 2007 – Alle Regeln per Makro ausführen, Makrosicherheit festlegen

Wenn nicht, erscheint bei der Ausführung von unsignierten Makros eine Fehlermeldung (Abb. 6).

Outlook 2007 – Fehlermeldung, wenn Makros deaktiviert sind
Abb. 6: Outlook 2007 – Fehlermeldung, wenn Makros deaktiviert sind

Wenn der Wert Warnungen für alle Makros gewählt wird, erscheint dann eine Warnung beim Starten von Outlook (Abb. 7). Demzufolge ist der Wert Keine Sicherheitsüberprüfung für Makros sinnvoll.

Sicherheitshinweis bei Makros durch Outlook 2007
Abb. 7: Sicherheitshinweis bei Makros durch Outlook 2007

Das Makro wird dann über Extras, Makro, Makros, Bearbeiten bei ThisOutlookSession eingefügt (Abb. 8).
Nach einem Neustart von Outlook werden beim Anlegen ganztägiger Termine diese mit 16 h Erinnerung versehen. Über den Wert bei ReminderMinutesBeforeStart kann dieser Zeitraum gesteuert werden.

Was lernen wir daraus? Jeder sollte ein bisschen VB(A) können, meint zumindest vielleicht Microsoft... ;)

Einfügen vom VBA-Anwendungscode in ThisOutlookSession
Abb. 8: Einfügen vom VBA-Anwendungscode in ThisOutlookSession

Public WithEvents olAppointmentItems As Outlook.Items

Private Sub Application_Startup()
    Set olAppointmentItems = ThisOutlookSession.Session.GetDefaultFolder(olFolderCalendar).Items
End Sub

Private Sub olAppointmentItems_ItemAdd(ByVal Item As Object)
    If Item Is Nothing Or Item = "" Then
Exit Sub
End If

Dim appointment As AppointmentItem Set appointment = Item If appointment.AllDayEvent = True Then appointment.ReminderMinutesBeforeStart = 960 '60 Minuten * 16 appointment.Save End If End Sub
Monday, April 06, 2009 4:10:33 PM (W. Europe Standard Time, UTC+01:00)
Wow, das klappt ja super!

Wenn man gar keine Erinnerung möchte, setzt man "appointment.ReminderSet = False" vor die Minutenangabe und schon wird man gar nicht mehr behelligt (bei 0 Minuten wird man ja immer noch um Mitternacht geweckt)

Beste Grüße - Helmut
Helmut Wohlrab
All comments require the approval of the site owner before being displayed.
Name
E-mail
(will show your gravatar icon)
Home page

Comment (Some html is allowed: a@href@title, b, blockquote@cite, em, i, strike, strong, sub, sup, u) where the @ means "attribute." For example, you can use <a href="" title=""> or <blockquote cite="Scott">.  

Live Comment Preview

Boldness, risk‐taking and a little bit of craziness – lateral thinker Torsten Weber
Boldness, risk‐taking and a little bit of craziness – lateral thinker Torsten Weber

.NET User Group Leipzig

Categories

Calendar

<February 2012>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

Archive

My subscribed blogs

show all
show less
Blogs of good friends (as OPML)
More Blogs (as OPML)