Festlegen eines Moduls als aktuell ausgewähltes Modul im Navigationsbereich

Verwenden Sie die CurrentModule-Eigenschaft des NavigationPane-Objekts in Microsoft Outlook, um ein NavigationModule-Objekt als das aktuell ausgewählte Navigationsmodul im Navigationsbereich eines Explorer-Objekts festzulegen.

Im folgenden Beispiel wird das Navigationsmodul Calendar entweder programmgesteuert oder durch Benutzeraktion als derzeit ausgewähltes Navigationsmodul im Navigationsbereich festgelegt, sofern das Navigationsmodul Journal ausgewählt ist. Im Beispiel werden die folgenden Aktionen ausgeführt:

  1. Im Beispiel wird zunächst eine Referenz auf das NavigationPane -Objekt für den aktiven Explorer abgerufen, wenn das Startup -Ereignis des Application -Objekts aufgerufen wurde, und dem objPane-Code hinzugefügt, sodass das ModuleSwitch -Ereignis des NavigationPane -Objekts erkannt werden kann.

  2. Wenn das ModuleSwitch-Ereignis der NavigationPane auftritt, überprüft das Beispiel, ob das aktuelle Navigationsmodul geändert wurde, indem der Inhalt des CurrentModule-Parameters des ModuleSwitch-Ereignisses mit der CurrentModule-Eigenschaft des NavigationPane-Objekts verglichen wird.

  3. Wenn sich diese Objektverweise unterscheiden, überprüft das Beispiel die NavigationModuleType-Eigenschaft des NavigationModule-Objektverweises im CurrentModule-Parameter des ModuleSwitch-Ereignisses .

  4. Wenn die NavigationModuleType -Eigenschaft des aktuell ausgewählten Module -Objekts auf olModuleJournal festgelegt ist, wird im Beispiel ein Dialogfeld angezeigt, mit dem dem Benutzer mitgeteilt wird, dass das derzeit ausgewählte Navigationsmodul Journal derzeit nicht verfügbar ist, und dass stattdessen das Navigationsmodul Calendar ausgewählt wird.

  5. Schließlich wird im Beispiel die GetNavigationModule -Methode der Modules -Sammlung für das NavigationPane -Objekt verwendet, um ein CalendarModule -Objekt abzurufen. Wenn diese Aktion erfolgreich ist, wird im Beispiel schließlich die CurrentModule -Eigenschaft des NavigationPane -Objekts auf die abgerufene CalendarModule -Objektreferenz festgelegt.

Dim WithEvents objPane As NavigationPane 
 
Private Sub Application_Startup() 
 ' Get the NavigationPane object for the 
 ' currently displayed Explorer object. 
 Set objPane = Application.ActiveExplorer.NavigationPane 
 
End Sub 
 
Private Sub objPane_ModuleSwitch(ByVal CurrentModule As NavigationModule) 
 Dim objModule As CalendarModule 
 
 ' Check if the currently selected navigation module 
 ' has changed. 
 If Not (CurrentModule Is objPane.CurrentModule) Then 
 ' If the Journal module was selected, forcibly change 
 ' it to the Calendar module by setting the 
 ' CurrentModule property of the NavigationPane object. 
 If CurrentModule.NavigationModuleType = olModuleJournal Then 
 
 ' Let the user know what's happening. 
 MsgBox "The Journal module is temporarily unavailable. " & _ 
 " Outlook is switching to the Calendar module, if available." 
 
 ' Retrieve the Calendar module, if one exists, for the 
 ' current Navigation Pane. 
 Set objModule = objPane.Modules.GetNavigationModule(olModuleCalendar) 
 
 ' If we have one, set the CurrentModule property of the 
 ' NavigationPane object to the Calendar module. 
 If Not (objModule Is Nothing) Then 
 Set objPane.CurrentModule = objModule 
 End If 
 End If 
 End If 
 
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.