Свойство Document.MacrosEnabled (Visio)
Указывает, можно ли выполнять макросы и обрабатывать события в проекте Microsoft Visual Basic для приложений (VBA) документа. Только для чтения.
Синтаксис
expression. МакросыEnabled
Выражение Переменная, представляющая объект Document .
Возвращаемое значение
Boolean
Примечания
Если документ содержит макросы, необходимые для выполнения решения, можно использовать свойство MacrosEnabled , чтобы проверить, включены ли макросы в документе. Если они отключены, можно отобразить сообщение о том, что решение может работать неправильно, так как параметры документа запрещают выполнение макросов.
Значение свойства MacrosEnabled зависит от сочетания параметра макроса и состояния подписи проекта (будь то цифровая подпись в доверенном источнике или в надежном расположении). В следующей таблице описаны эти сочетания.
Параметр макроса | Цифровая подпись | В надежном расположении | Свойство MacrosEnabled |
---|---|---|---|
Отключить все макросы без уведомления | Недоступно | Нет | Неверно |
Отключить все макросы без уведомления | Недоступно | Да | Верно |
Отключение всех макросов с уведомлением пользователя | Недоступно | Нет | Неверно |
Отключение всех макросов с уведомлением пользователя | Недоступно | Да | Верно |
Отключить все макросы кроме макросов с цифровой подписью | Нет | Нет | Неверно |
Отключить все макросы кроме макросов с цифровой подписью | Да | Н/Д | Верно |
Отключить все макросы кроме макросов с цифровой подписью | Недоступно | Да | Верно |
Включение всех макросов | Недоступно | Недоступно | Верно |
По умолчанию макросы отключены в документе Visio, который не является доверенным издателем, не имеет цифровой подписи или не находится в надежном расположении.
Однако вы можете изменить параметры по умолчанию в категории Параметры макросовЦентра управления безопасностью Visio (перейдите на вкладку Файл , выберите Параметры, Центр управления безопасностью, а затем — Параметры центра управления безопасностью). Если выбран параметр Отключить все макросы, кроме макросов с цифровой подписью , макросы в документах Visio, не в надежном расположении, будут включены только в том случае, если документы подписаны цифровой подписью. Если выбрать Отключить все макросы без уведомления или Отключить все макросы с уведомлением, макросы в документах, которые не находятся в надежном расположении, будут отключены. При выборе параметра Включить все макросы все макросы всегда будут включены, но этот параметр представляет угрозу безопасности и не рекомендуется.
Надежные источники перечислены в категории Надежные издатели в Центре управления безопасностью, а надежные расположения — в категории Надежные расположения .
Чтобы открыть документ в отключенном состоянии (макросы не включены), можно использовать метод OpenEx объекта Document . Например:
Documents.OpenEx(fileName , visOpenMacrosDisabled)
Пример
В следующем примере показано, как открыть документ из надстройки и использовать свойство MacrosEnabled , чтобы определить, включены ли макросы. Если макросы отключены, появится окно сообщения с предупреждением пользователя об ограниченной функциональности. Перед выполнением этого примера укажите допустимое имя файла документа для имени файла переменной.
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
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.