Freigeben über


Arbeiten mit Outlook-Ereignissen

In Outlook wird eine Vielzahl von Ereignissen bereitgestellt, mit denen die Programme Microsoft Visual Basic, Microsoft Visual Basic für Applikationen (VBA) und Microsoft Visual Basic Scripting Edition (VBScript) benachrichtigt werden können, wenn eine bedeutende Änderung aufgetreten ist. Durch Outlook-Ereignisse kann ein Programm beispielsweise darüber benachrichtigt werden, dass ein Objekt geöffnet wurde oder eine neue E-Mail im Posteingang ankommt.

Um eine Benachrichtigung über ein bedeutendes Ereignis zu erhalten, schreiben Sie eine Ereignishandlerprozedur. Je nachdem, ob das Ereignis in Visual Basic oder Visual Basic for Applications oder in VBScript behandelt wird, ist dies entweder ein Sub oder ein Function , das Outlook aufruft, wenn das Ereignis aufgerufen wird. Der Code, den Sie in den Ereignishandler einfügen, ermöglicht es Ihrem Programm, angemessen auf das Ereignis zu reagieren, und in einigen Fällen kann das Programm sogar die dem Ereignis zugeordnete Standardaktion abbrechen, z. B. das Verhindern, dass ein E-Mail-Element gesendet wird.

Ereignistypen

Outlook-Ereignisse können in zwei Hauptkategorien unterteilt werden: Ereignisse auf Elementebene und Ereignisse auf Anwendungsebene.

Ereignisse auf Elementebene beziehen sich auf ein bestimmtes Element und werden in der Regel von VBScript-Code behandelt, der in dem Formular enthalten ist, das dem Element zugeordnet ist. Diese Ereignisse benachrichtigen Ihr Programm, wenn ein Element geöffnet, gesendet oder gepostet, gespeichert oder geschlossen wurde und wenn der Benutzer auf eine Nachricht geantwortet oder weitergeleitet oder eine benutzerdefinierte Aktion initiiert hat. Ereignisse auf Elementebene können ihr Programm auch benachrichtigen, wenn der Benutzer auf ein Steuerelement im Formular geklickt hat oder wenn eine Elementeigenschaft geändert wurde.

Ereignisse auf Anwendungsebene werden normalerweise von Visual Basic oder Visual Basic für Applikationen behandelt, da diese Ereignisse nicht nur die Elemente betreffen, die mit einem bestimmten Formular verbunden sind. Ereignisse auf Anwendungsebene können die Anwendung selbst, Explorer-Auflistungen oder -Fenster (einschließlich des Verknüpfungsbereichs), Inspektor-Auflistungen oder -Fenster, Ordner und Ordnerauflistungen, Auflistungen von Elementen sowie Synchronisierungsobjekte betreffen.

Reagieren auf Ereignisse

Um auf Ereignisse auf Elementebene zu reagieren, fügen Sie dem Skript des Formulars, in dem das Element angezeigt wird, Prozeduren für den Ereignishandler hinzu. Wenn beim Öffnen eines Elements im Formular beispielsweise Code ausgeführt werden soll, fügen Sie dem Skript des Formulars eine Prozedur wie die folgende hinzu.

Function Item_Open() 
 MsgBox "A new item has opened in this form." 
End Function

Das Reagieren auf Ereignisse der Anwendungsebene ist etwas komplizierter, da hier besondere Schritte notwendig sind, um den Ereignishandler mit dem Bestandteil von Outlook zu verbinden, in dem das Ereignis eintritt. Informieren Sie sich über das Schreiben einer Prozedur für den Ereignishandler auf Anwendungsebene.

Ereignisreihenfolge

Mit Ausnahme bestimmter Formularereignisse kann Ihr Programm nicht davon ausgehen, dass Ereignisse in einer bestimmten Reihenfolge auftreten, auch wenn sie scheinbar in einer konsistenten Reihenfolge aufgerufen werden. Die Reihenfolge, in der Outlook Ereignishandler aufruft, kann sich abhängig von anderen Ereignissen ändern, die auftreten können, oder die Reihenfolge kann sich in zukünftigen Versionen von Outlook ändern.

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.