Verwenden von Outlook Visual Basic für Applikationen, um auf Outlook-Ereignisse zu reagieren
Ereignisprozeduren (auch Ereignishandler genannt) werden geschrieben, um auf Ereignisse zu reagieren, die in Microsoft Outlook eintreten. Beispielsweise können Sie eine Ereignisprozedur schreiben, die automatisch das Explorer-Fenster maximiert, wenn Outlook gestartet wird.
Ereignisse sind bestimmten Objekten zugeordnet. Das Application-Objekt ist das oberste Objekt und immer verfügbar (d.a. es muss nicht erstellt werden). Sie können eine Application-Ereignisprozedur im ThisOutlookSession-Modulfenster hinzufügen, indem Sie einfach in der linken Liste Anwendung und dann das Ereignis in der rechten Liste auswählen.
Um anderen Objekten als dem Application-Objekt einen Ereignishandler hinzuzufügen, sind einige weitere Schritte erforderlich.
Zuerst müssen Sie mithilfe des WithEvents-Stichwortes eine Variable deklarieren, um das Objekt zu bestimmen, dessen Ereignis Sie bearbeiten wollen. Um beispielsweise eine Variable zu deklarieren, die das OutlookBarPane-Objekt darstellt, fügen Sie Folgendes dem Codemodul hinzu.
Dim WithEvents myOlBar as Outlook.OutlookBarPane
Sie können dann myOlBar
in der Liste Objekte des Modulfensters auswählen und dann das Ereignis in der Prozedurliste auswählen. Der Visual Basic-Editor fügt daraufhin die Vorlage für die Ereignisprozedur in das Modulfenster ein. Im Anschluss geben Sie den Code ein, der verwendet werden soll, wenn das Ereignis eintritt. Im folgenden Beispiel wurde in die BeforeNavigate-Ereignisprozedur Code für das OutlookBarPane -Objekt eingefügt.
Private Sub myOlBar_BeforeNavigate(ByVal Shortcut As OutlookBarShortcut, Cancel As Boolean)
If Shortcut.Name = "Notes" Then
MsgBox "You cannot open the Notes folder."
Cancel = True
End If
End Sub
Im letzten Schritt wird Code eingefügt, um die Objektvariable auf das Objekt festzulegen, dessen Ereignis Sie bearbeiten möchten. Dieser Code kann in einem Makro vorhanden sein oder in der Startup-Ereignisprozedur, wenn das Ereignis bei jedem Start von Outlook behandelt werden soll, wie im folgenden Beispiel.
Private Sub Application_Startup()
Set myOlBar = Application.ActiveExplorer.Panes(1)
End Sub
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.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für