Если установлен флажок «Инструменты»> «Параметры»> «Печать»> «Обновить поля» (в Word 2007, кнопка «Office»> «Параметры Word»> «Дисплей»> «Обновить поля перед печатью»), то после перехода к предварительному просмотру и обратно обновятся поля. Но так же легко нажать Ctrl+A и затем F9.
Если вы ищете что-то, что вообще не требует взаимодействия с пользователем, тогда вам нужен макрос.
Пример макроса для обновления всех полей типа ToC:
Sub TOCFieldUpdate()
Автор Чарльз Кайл Кеньон 27 января 2005 г.
'Field Updater - TOC поля
Dim oField As Field
При ошибке возобновить следующее
Для каждого oField в ActiveDocument.поля
Если офилд.Type = wdFieldTOC Тогда
oField.Обновить
Конец, если
Если офилд.Type = wdFieldTOA Тогда
oField.Обновить
Конец, если
Next oField
End Sub
Если вы хотите периодически выполнять вышеупомянутый макрос, вот еще один макрос для этого.
это будет обновлять ToC каждые 5 минут:
Public Sub ToCUpdate()
Вызовите TOCFieldUpdate
DoEvents
Заявка.OnTime When:= Now + TimeValue("00:05:00"), name:= "ToCUpdate"
End Sub
Вы можете назначить этот макрос значку или горячей клавише. Я бы не советовал запускать его автоматически при открытии документа, как если бы вы работали против новейших мер безопасности Microsoft.
Примечание: вышесказанное не проверено и, что еще хуже, является моей самой первой попыткой написания VBA.