Freigeben über


Global.ActiveDocument-Eigenschaft (Visio)

Gibt das aktive Document-Objekt zurück, bei dem es sich um das im aktiven Fenster angezeigte Dokument handelt. Schreibgeschützt.

Syntax

Ausdruck. ActiveDocument

Ausdruck Eine Variable, die ein Global-Objekt darstellt.

Rückgabewert

Dokument

Hinweise

Wenn keine Dokumente geöffnet sind, gibt es kein aktives Dokument, und die ActiveDocument-Eigenschaft gibt den Wert Nothing zurück, ohne eine Ausnahme auszulösen.

Wenn sich Ihr Code im Microsoft Visual Basic-Projekt eines Visio-Dokuments befindet, gibt die ActiveDocument-Eigenschaft häufig, aber nicht notwendigerweise, einen Verweis auf das ThisDocument-Objekt zurück, ein Klassenmodul im Visual Basic-Projekt jedes Microsoft Visio-Dokuments. Wenn das ThisDocument-Objekt im aktiven Fenster angezeigt wird, verweisen die Objekte ActiveDocument und ThisDocument auf dasselbe Dokument. Wenn Code in einem Projekt auf das ThisDocument-Objekt verweist, wird ein Verweis auf das Document-Objekt des Projekts zurückgegeben.

Ob Sie das ActiveDocument-Objekt oder das ThisDocument-Objekt verwenden, hängt vom Zweck des Codes ab.

Sie können das Ergebnis, das von der ActiveDocument-Eigenschaft zurückgegeben wird, mit dem Wert Nothing vergleichen, um zu bestimmen, ob ein Dokument aktiv ist. Wenn der Wert der Application.Documents.Count-Eigenschaft größer als null ist, ist mindestens ein Dokument geöffnet und aktiv.

Beispiel

Im folgenden VBA-Makro (Microsoft Visual Basic für Applikationen) werden zwei sichere Möglichkeiten zum Abrufen eines aktiven Dokuments angezeigt (sofern eins vorhanden ist). In beiden Fällen wird der Name des aktiven Dokuments im Direktfenster gedruckt. Der Code ruft das aktive Dokument ohne Qualifizierung aus dem globalen Visio-Objekt ab, das automatisch für VBA-Code verfügbar ist, der Teil des VBA-Projekts eines Visio-Dokuments ist.

 
Public Sub ActiveDocument_Example() 
 
 Dim vsoDocument As Document 
 
 'First method 
 If Documents.Count > 0 Then 
 Set vsoDocument = ActiveDocument 
 Debug.Print vsoDocument.Name 
 Else 
 Debug.Print "No active document." 
 End If 
 
 'Second method 
 If Not(ActiveDocument Is Nothing) Then 
 Set vsoDocument = ActiveDocument 
 Debug.Print vsoDocument.Name 
 Else 
 Debug.Print "No active document." 
 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.