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.