Свойство Application.VBAEnabled (Visio)
Указывает, включена ли в приложении Visual Basic для приложений (VBA). Только для чтения.
Синтаксис
expression. VBAEnabled
выражение: переменная, представляющая объект Application.
Возвращаемое значение
Boolean
Примечания
Если документ, содержащий проект VBA, открыт с включенным VBA, а затем VBA отключается при открытии документа:
Microsoft Visio больше не выполняет макросы в этом документе, но имена макросов по-прежнему отображаются в диалоговом окне Макросы (нажмите клавиши ALT+F8).
Visio продолжает выполнять запуск событий в проект.
Если документ, содержащий проект VBA, открыт с отключенным VBA, а затем VBA становится включенным при открытии документа:
Visio не запускает события в проект, даже если VBA включен.
Макросы остаются отключенными.
Свойство VBAEnabled имеет значение True , если флажок Доверять доступу к объектной модели проекта VBA установлен в разделе Параметры макросов разработчика на странице Параметры макросовцентра управления безопасностью (перейдите на вкладку Файл , щелкните Параметры, щелкните Центр управления безопасностью, а затем — Параметры центра управления безопасностью). Если он не выбран, свойство сообщает false.
Пример
У вас может быть документ, требующий правильной работы VBA, например код в обработчике событий DocumentOpened документа. Следующий код можно выполнить из надстройки, чтобы проверить, включена ли VBA в приложении перед открытием документа, зависящее от VBA.
Перед выполнением этой процедуры укажите допустимое имя файла документа для имени файла переменной.
Public Sub VBAEnabled_Example()
Dim vsoDocument As Visio.Document
Dim blsStatus As Boolean
blsStatus = Application.VBAEnabled
If Not blsStatus Then
MsgBox "For this process to continue, VBA must be enabled." & _
" Please enable VBA and start over."
Else
Set vsoDocument = Documents.Open("filename ")
End if
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.