Использование событий с объектом document
Объект Document поддерживает несколько событий, позволяющих реагировать на состояние документа. Вы создаете процедуры для реагирования на эти события в модуле класса с именем ThisDocument. Чтобы создать процедуру события, выполните следующие действия.
В разделе Обычный проект или проект документа в окне обозревателя проектов дважды щелкните Этот документ. (В представлении папок объект ThisDocument находится в папке Объекты Microsoft Word .)
Выберите Документ в раскрывающемся списке Объект . В модуль класса добавляется пустая подпрограмма для события New .
Выберите событие в раскрывающемся списке Процедура . В модуль класса добавляется пустая подпрограмма для выбранного события.
Добавьте инструкции Visual Basic, которые необходимо выполнить при возникновении события.
В следующем примере показана процедура new event в проекте Normal, которая будет выполняться при создании нового документа на основе шаблона "Обычный".
Private Sub Document_New()
MsgBox "New document was created"
End Sub
В следующем примере показана процедура события Close в проекте документа, который выполняется только при закрытии документа.
Private Sub Document_Close()
MsgBox "Closing the document"
End Sub
В отличие от автоматических макросов, процедуры событий в шаблоне "Обычный" не имеют глобальной области. Например, процедуры событий в шаблоне "Обычный" выполняются только в том случае, если присоединенный шаблон является шаблоном "Обычный". Если автоматический макрос существует в документе и присоединенном шаблоне, будет выполняться только автоматический макрос, хранящийся в документе. Если в документе и присоединенном к нему шаблоне существует процедура события документа, будут запущены обе процедуры событий.
Замечания
Сведения о создании процедур событий для объекта Application см. в разделе Использование событий с объектом приложения.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.