【问题标题】:Update all fields in Word 2010 automatically自动更新 Word 2010 中的所有字段
【发布时间】:2015-07-16 07:20:21
【问题描述】:

我想要一种自动更新文档上所有字段的方法。我目前有一个链接到 F9 的宏。此宏更新页眉和页脚中的所有字段,以及主文档中的所有字段。

Sub UpdateFields()
    Dim oStory As Range
    For Each oStory In ActiveDocument.StoryRanges
        oStory.Fields.Update
        If oStory.StoryType <> wdMainTextStory Then
            While Not (oStory.NextStoryRange Is Nothing)
                Set oStory = oStory.NextStoryRange
                oStory.Fields.Update
            Wend
        End If
    Next oStory
    Set oStory = Nothing
End Sub

除了在每个键上设置宏之外,我将如何使这个宏在用户键入任何内容时运行?

例如,用户可以在页脚或页眉中放置一个显示字符数量的字段。如果是这种情况,我希望能够在我键入时看到字符字段更新。

【问题讨论】:

    标签: vba ms-word


    【解决方案1】:

    以下是 Word VBA 中的事件:

    对于应用程序: https://msdn.microsoft.com/EN-US/library/office/dn320473.aspx

    对于文档: https://msdn.microsoft.com/EN-US/library/office/dn320613.aspx


    我建议您使用Application.WindowSelectionChange 事件(在活动文档窗口中的选择更改时发生):https://msdn.microsoft.com/EN-US/library/office/ff192791.aspx

    Public WithEvents appWord As Word.Application
    
    Private Sub appWord_WindowSelectionChange(ByVal Sel As Selection)
        UpdateFields
    End Sub
    

    如果您需要更多详细信息,可以在这里找到:https://msdn.microsoft.com/library/office/ff746018.aspx

    【讨论】:

      猜你喜欢
      • 2016-02-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多