Propriété InvisibleApp.ActiveDocument (Visio)

Renvoie l’objet Document actif, qui est le document affiché dans la fenêtre active. En lecture seule.

Syntaxe

expression. ActiveDocument

Expression Variable qui représente un objet InvisibleApp .

Valeur renvoyée

Document

Remarques

Si aucun document n'est ouvert, il n'existe pas de document actif et la propriété ActiveDocument renvoie la valeur Nothing sans générer d'exception.

Si votre code se trouve dans le projet Microsoft Visual Basic d’un document Visio, la propriété ActiveDocument renvoie souvent, mais pas nécessairement, une référence à l’objet ThisDocument , un module de classe dans le projet Visual Basic de chaque document Microsoft Visio. Si l’objet ThisDocument apparaît dans la fenêtre active, les objets ActiveDocument et ThisDocument font référence au même document. Toute référence à l’objet ThisDocument dans le code d’un projet renvoie une référence à l’objet Document du projet.

L'utilisation de l'objet ActiveDocument ou ThisDocument dépend de l'objectif de votre code.

Vous pouvez comparer le résultat renvoyé par la propriété ActiveDocument à la valeur Nothing pour déterminer si un document est actif. Si la valeur de la propriété Documents.Count est supérieure à zéro, au moins un document est ouvert et actif.

Exemple

La macro Microsoft Visual Basic pour Applications (VBA) suivante indique deux méthodes sécurisées d’obtenir un document actif (s’il en existe un). Dans chaque cas, elle imprime le nom du document actif dans la fenêtre Exécution. Le code obtient le document actif sans qualification à partir de l’objet global Visio, qui est automatiquement disponible pour le code VBA qui fait partie du projet VBA d’un document Visio.

 
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

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.