Vba Word宏的速度非常慢

Vba Word宏的速度非常慢,vba,ms-word,Vba,Ms Word,我刚开始用宏这个词。我无法识别word文档中的所有交叉引用和超链接。我用宏来解决这个问题 我写的宏是 For Each fld In ActiveDocument.Fields If fld.Type = wdFieldRef Or fld.Type = wdFieldHyperlink Then fld.Select For Each ch In Selection.Characters ch.HighlightColorIndex = wdYellow

我刚开始用宏这个词。我无法识别word文档中的所有交叉引用和超链接。我用宏来解决这个问题

我写的宏是

For Each fld In ActiveDocument.Fields
If fld.Type = wdFieldRef Or fld.Type = wdFieldHyperlink Then
    fld.Select
    For Each ch In Selection.Characters
        ch.HighlightColorIndex = wdYellow
    Next
End If
Next
这是我写的宏,它工作正常,但速度太慢,我无法使用它

必须有一种有效的方法来解决这个问题。如果是,请让我知道如何。任何网站的参考,使我可以参考也可以


谢谢

禁用屏幕更新,尽可能避免选择任何内容。例如:

Sub Demo()
Application.ScreenUpdating = False
Dim Fld As Field
For Each Fld In ActiveDocument.Fields
  With Fld
    Select Case .Type
      Case wdFieldRef, wdFieldPageRef, wdFieldHyperlink
        .Result.HighlightColorIndex = wdYellow
    End Select
  End With
Next
Application.ScreenUpdating = True
End Sub

禁用屏幕更新,尽可能避免选择任何内容。例如:

Sub Demo()
Application.ScreenUpdating = False
Dim Fld As Field
For Each Fld In ActiveDocument.Fields
  With Fld
    Select Case .Type
      Case wdFieldRef, wdFieldPageRef, wdFieldHyperlink
        .Result.HighlightColorIndex = wdYellow
    End Select
  End With
Next
Application.ScreenUpdating = True
End Sub

您好,这确实有帮助,请查看编辑后的问题,并让我知道是否可以改进您好,这确实有帮助,请查看编辑后的问题,并让我知道是否可以改进