Partager via


Propriété Document.MacrosEnabled (Visio)

Spécifie si vous pouvez exécuter des macros et traiter des événements dans le projet Microsoft Visual Basic pour Applications (VBA) d’un document. En lecture seule.

Syntaxe

expression. MacrosEnabled

Expression Variable qui représente un objet Document .

Valeur renvoyée

Booléen

Remarques

Si votre document contient des macros nécessaires à l’exécution de votre solution, vous pouvez utiliser la propriété MacrosEnabled pour vérifier si les macros sont activées dans le document. Si elles ne le sont pas, vous pouvez afficher un message indiquant que votre solution risque de ne pas fonctionner correctement car les paramètres du document empêchent l’exécution des macros.

La valeur de la propriété MacrosEnabled dépend d’une combinaison entre le paramètre de la macro et l’état de la signature du projet (s’il est signé numériquement par une source fiable ou situé dans un emplacement approuvé). Le tableau suivant décrit ces combinaisons.

Paramètre de macro Signature numérique Dans un emplacement approuvé Propriété MacrosEnabled
Désactiver toutes les macros sans notification S/O Non Faux
Désactiver toutes les macros sans notification N/A Oui Vrai
Désactiver toutes les macros avec notification S/O Non Faux
Désactiver toutes les macros avec notification N/A Oui Vrai
Désactiver toutes les macros à l’exception des macros signées numériquement Non Non Faux
Désactiver toutes les macros à l’exception des macros signées numériquement Oui N/A Vrai
Désactiver toutes les macros à l’exception des macros signées numériquement N/A Oui Vrai
Activer toutes les macros S/O S/O Vrai

Par défaut, les macros sont désactivées dans les documents Visio qui ne sont pas issus d’un éditeur approuvé ou qui ne sont pas signés numériquement ou bien encore, qui ne se trouvent pas dans un emplacement approuvé.

Toutefois, vous pouvez modifier les paramètres par défaut dans la catégorie Paramètres des macros du Centre de gestion de la confidentialité Visio (cliquez sur l’onglet Fichier , sur Options, sur Centre de gestion de la confidentialité, puis sur Paramètres du Centre de gestion de la confidentialité). Si la case à cocher Désactiver toutes les macros à l’exception des macros signées numériquement est activée, les macros des documents Visio qui ne se trouvent pas dans un emplacement approuvé sont activées uniquement si les documents sont signés numériquement. Si vous activez la case à cocher Désactiver toutes les macros sans notification ou Désactiver toutes les macros avec notification, les macros des documents qui ne se trouvent pas dans un emplacement approuvé sont désactivées. Si vous sélectionnez Activer toutes les macros, les macros sont toujours activées, mais cette option présente un risque en termes de sécurité et elle n’est donc pas recommandée.

Les sources approuvées sont répertoriées dans la catégorie Éditeurs approuvés dans le Centre de gestion de la confidentialité, et les emplacements approuvés sont répertoriés dans la catégorie Emplacements approuvés.

Pour ouvrir un document dans un état désactivé (les macros ne sont pas activées), vous pouvez utiliser la méthode OpenEx de l’objet Document. Par exemple :

Documents.OpenEx(fileName , visOpenMacrosDisabled)

Exemple

L’exemple suivant montre comment ouvrir un document à partir d’un module complémentaire et utiliser la propriété MacrosEnabled pour déterminer si les macros sont activées. Si les macros sont désactivées, une fenêtre de message s’affiche et prévient l’utilisateur que la fonctionnalité est limitée. Avant d’exécuter ce code, attribuez un nom de fichier valide à la variable filename.

 
Public Sub MacrosEnabled_Example() 
 
    Dim vsoDocument As Visio.Document 
    Dim blsStatus As Boolean 
 
    Set vsoDocument = Documents.Open("filename ") 
    blsStatus = vsoDocument.MacrosEnabled 
 
    If Not blsStatus Then 
 
         MsgBox "Macro execution has been disabled for this document." & _  
            "Functionality may be limited." 
 
    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.