Propiedad Document.MacrosEnabled (Visio)
Especifica si se pueden ejecutar macros y procesar eventos en el proyecto de Microsoft Visual Basic para Aplicaciones (VBA) de un documento. Solo lectura.
Sintaxis
expresión. MacrosEnabled
Expresión Variable que representa un objeto Document .
Valor devuelto
Booleano
Comentarios
Si el documento contiene macros que son necesarias para la ejecución de la solución, puede usar la propiedad MacrosEnabled para comprobar si las macros están habilitadas en el documento. Si están deshabilitadas, puede mostrar un mensaje informando sobre la posibilidad de que la solución no funcione según lo esperado porque la configuración del documento impide la ejecución de las macros.
El valor de la propiedad MacrosEnabled depende de una combinación de la configuración de macros y del estado de la firma del proyecto (si lo ha firmado digitalmente una fuente o una ubicación de confianza). En la tabla siguiente se describen estas combinaciones.
Configuración de macro | Firmada digitalmente | En una ubicación de confianza | Propiedad MacrosEnabled |
---|---|---|---|
Deshabilitar todas las macros sin notificación | N/D | No | Falso |
Deshabilitar todas las macros sin notificación | N/D | Sí | Verdadero |
Deshabilitar todas las macros con notificación | N/D | No | Falso |
Deshabilitar todas las macros con notificación | N/D | Sí | Verdadero |
Deshabilitar todas las macros excepto las firmadas digitalmente | No | No | Falso |
Deshabilitar todas las macros excepto las firmadas digitalmente | Sí | N/D | Verdadero |
Deshabilitar todas las macros excepto las firmadas digitalmente | N/D | Sí | Verdadero |
Habilitar todas las macros | N/D | N/D | Verdadero |
De forma predeterminada, en un documento de Visio están deshabilitadas las macros que no provienen de un editor de confianza, las que no están firmadas digitalmente y las que no están en una ubicación de confianza.
Sin embargo, puede cambiar la configuración predeterminada en la categoría Configuración de macros del Centro de confianza de Visio (haga clic en la pestaña Archivo , en Opciones, en Centro de confianza y, a continuación, en Configuración del Centro de confianza). Si Deshabilitar todas las macros excepto las firmadas digitalmente está activada, las macros de los documentos de Visio que no se encuentren en una ubicación de confianza se habilitarán sólo si los documentos están firmados digitalmente. Si selecciona Deshabilitar todas las macros sin notificación o Deshabilitar todas las macros con notificación, se deshabilitarán las macros de los documentos que no se encuentren en una ubicación de confianza. Si selecciona Habilitar todas las macros, todas las macros estarán activadas en todo momento, pero esta opción presenta un riesgo para la seguridad y no se recomienda su uso.
Los orígenes de confianza aparecen en la categoría Publicadores de confianza en el Centro de confianza y las ubicaciones de confianza aparecen en la categoría Ubicaciones de confianza .
Para abrir un documento con las macros deshabilitadas, puede utilizar el método OpenEx del objeto Document. Por ejemplo:
Documents.OpenEx(fileName , visOpenMacrosDisabled)
Ejemplo:
En el ejemplo siguiente se muestra cómo abrir un documento desde un complemento y cómo usar la propiedad MacrosEnabled para determinar si las macros están habilitadas. Si las macros están deshabilitadas, aparece un cuadro de mensaje advirtiendo al usuario de la funcionalidad limitada. Antes de ejecutar este ejemplo, suministre un nombre de archivo de documento válido para la variable nombrearchivo.
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
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.