如何让 Word 2007 在保存时更新所有字段

如何让 Word 2007 在保存时更新所有字段

如何让 Word 2007 在保存时更新所有字段?这应该包括页眉和页脚中的字段。

如果可能的话,请不要使用宏和 VB 代码。我想保持文档干净。

答案1

由于 Ctrl+A 和 Ctrl+F9 不会处理页眉/页脚以及可能的其他故事,因此需要 VBA 或其他代码,这可能是最适合 Stack Overflow 的问题。

VBA 代码可能如下所示:

Sub updateFieldsIncludeHeadersFooters()
    Dim sec As Section
    Dim hdrftr As HeaderFooter

    ActiveDocument.Fields.Update 'address the fields in the main text story

    'now go through headers/footers for each section, update fields per range
    For Each sec In ActiveDocument.Sections
        For Each hdrftr In sec.Headers
            hdrftr.Range.Fields.Update
        Next
        For Each hdrftr In sec.Footers
            hdrftr.Range.Fields.Update
        Next
    Next
End Sub

我不建议接管 Word 的保存事件来自动运行它,而是将其挂接到按钮上或让用户以其他方式明确调用它。

相关内容