Обновление полей в заблокированных формах (Microsoft Word)
Если вы создаете форму в Word, в форме можно использовать два типа полей: обычные поля и поля формы. Поля формы и то, как они обновляются, рассматриваются в других вопросах _WordTips _. Если вы создаете форму, которая использует другие типы полей, которые необходимо периодически обновлять, это может быть неприятно. Зачем? Потому что Word не всегда обновляет обычные поля, когда вы заполняете заблокированную форму.
К сожалению, единственный способ обновить такие поля — это либо распечатать документ (что обычно приводит к обновлению всех полей), либо принудительно обновлять с помощью макроса. Если последний вариант является желаемым, макрос должен выполнять следующее:
-
Разблокируйте документ.
-
Обновите поля.
-
Повторно заблокируйте документ.
Это относительно простая задача, которую можно выполнить с помощью VBA. Вы можете использовать следующий макрос:
Sub UpdateFields() Dim OneStory as Range Dim OneField as Field ActiveDocument.Unprotect Password:="YourPassword" For Each OneStory In ActiveDocument.StoryRanges For Each OneField in Stories.Fields OneField.Update Next OneField Next OneStory ActiveDocument.Protect Type:=wdAllowOnlyFormFields, _ NoReset:=True, Password:="YourPassword" End Sub
Чтобы убедиться, что этот макрос работает для вас, вы должны убедиться, что вы изменили словосочетание «YourPassword» (два экземпляра) на любой пароль для вашего документа. Если в вашем документе не используется пароль, просто удалите параметр Password в обоих методах Unprotect и Protect.
WordTips — ваш источник экономичного обучения работе с Microsoft Word.
(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (8258) относится к Microsoft Word 2007, 2010 и 2013.
Вы можете найти версию этого совета для старого интерфейса меню Word здесь:
link: / word-Updating_Fields_in_Locked_Forms [Обновление полей в заблокированных формах]
.