Vba 在运行宏之前,请等待文档完全打开

Vba 在运行宏之前,请等待文档完全打开,vba,ms-word,Vba,Ms Word,在运行宏之前,是否可以让Word等待文档完全打开并填充所有字段?我尝试过使用文档\u Open(),但不幸的是,这运行得太早了 我正在尝试使用下面的宏取消所有字段的链接。这适用于已打开的文档。在document\u Open() 只需进行错误处理 Sub SelectUnlink() ON ERROR GOTO FINISH ActiveDocument.Range(0, 0).Select Selection.WholeStory Selection.Range

在运行宏之前,是否可以让Word等待文档完全打开并填充所有字段?我尝试过使用
文档\u Open()
,但不幸的是,这运行得太早了

我正在尝试使用下面的宏取消所有字段的链接。这适用于已打开的文档。在
document\u Open()


只需进行错误处理

Sub SelectUnlink()
    ON ERROR GOTO FINISH
    ActiveDocument.Range(0, 0).Select
    Selection.WholeStory
    Selection.Range.Fields.Unlink
    Selection.End = Selection.Start
    FINISH:

End Sub

在我看来,每当您遇到此错误时,它并不是由您的Document\u Open宏自动运行引起的,因为在打开文档之前,无法运行对SelectUnlink的调用。如果您正在运行“文档打开”或选择“手动取消链接宏”,但没有打开任何文档时,可能会发生这种情况。也就是说,在您的Document\u Open宏中,您可以将调用SelectUnlink替换为:

ActiveDocument.Fields.Update
ActiveDocument.Fields.Unlink

此文档可访问吗?@MathieuGuindon否,相同的错误,该错误是什么?91? 有点不对劲,
Document\u Open
Document
对象触发,该对象应该是
ThisDocument
。需要更多信息。只需添加命令即可更新代码中的所有字段。一旦完成,你就可以开始了。试着在打开文档的那一行后面放一个
DoEvents
,而不是忽略错误,不尝试获得所需的代码结果,假装一切正常,这将完成什么?
ActiveDocument.Fields.Update
ActiveDocument.Fields.Unlink