Джерри создал макрос для контроля версий, который спрашивает пользователя, хочет ли он сохранить документ с новым номером версии. Он запускается автоматически при открытии документа. Однако Джерри предпочел бы разрешить запуск макроса только тогда, когда документ действительно изменен или изменен каким-либо образом пользователем. Он задается вопросом, есть ли событие, которое регистрируется при фактическом редактировании документа? Или, возможно, есть свойство, которое регистрирует, был ли документ изменен?

Событий нет, но свойство есть. Что вы хотите сделать, так это проверить свойство Saved любого документа, который вы обрабатываете. Если свойство равно True, значит, изменений не было. Если свойство имеет значение False, то есть несохраненные изменения. (Другими словами, состояние True или False свойства Saved указывает, был ли документ сохранен или нет.)

Если вы хотите запросить номер версии, когда пользователь закрывает документ, вам нужно будет работать с обработчиком событий Document_Close. Измените обработчик событий, чтобы вы проверяли состояние свойства Saved следующим образом:

Private Sub Document_Close()

If Not ActiveDocument.Saved Then         ' Check to see if version should be updated         ActiveDocument.Save     End If End Sub

Вам, конечно же, потребуется заменить комментарий вашим конкретным кодом для обработки того, что должно происходить относительно номера версии. Метод Save используется для сохранения документа под текущим именем; если вы хотите сохранить его под новым именем, вы должны вместо этого использовать метод SaveAs.

Следует помнить одно предостережение: свойство Saved может быть установлено в значение False, даже если пользователь на самом деле не внес изменения в документ. Например, если в документе есть поля и поля обновляются автоматически, тогда для свойства Saved установлено значение False. Есть несколько других ситуаций, когда свойство изменяется, но свойство Saved — это наиболее точный доступный способ определить, действительно ли документ изменен или нет.

_Примечание: _

Если вы хотите знать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах WordTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / wordribbon-WordTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

WordTips — ваш источник экономичного обучения работе с Microsoft Word.

(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (13368) применим к Microsoft Word 2007, 2010, 2013, 2016, 2019 и Word в Office 365.