Propriété Application.ActiveDocument (Visio)
Renvoie l’objet Document actif, qui est le document affiché dans la fenêtre active. En lecture seule.
Syntaxe
expression. ActiveDocument
expressionUne variable qui représente un objetApplication.
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.
Si votre solution Visual Studio inclut la référence Microsoft.Office.Interop.Visio , cette propriété correspond aux types suivants :
- Microsoft.Office.Interop.Visio.IVApplication.ActiveDocument
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.