【发布时间】:2013-08-29 17:01:07
【问题描述】:
我有一个项目,它需要几个文档作为输入,对它们进行一些处理,最后创建几个新文档。我目前在将内容从一个 Word 文档粘贴到另一个文档时遇到问题。以下代码 sn-p 似乎相关:
Set refOrigin = FindReference(OriginDoc)
Set refDest = PasteDoc.Range(PasteDoc.Content.Start, PasteDoc.Content.End)
refDest.Collapse wdCollapseEnd
refOrigin.Copy
refDest.Paste
运行此代码时,我会偶尔在代码的粘贴行收到运行时错误 4198,Command Failed。但是,当我进入调试器时,我可以看到 refDest 和 refOrigin 都是有效范围。此外,当我逐行浏览代码时,它可以工作。但是,我可以看出,在它失败的情况下,它已经插入了一个嵌入的 Word 文档。
我已经对这些问题进行了一些研究,并且我相信存在某种类型的代码运行速度过快的问题,以便剪贴板有时能够跟上它。这对我来说很有意义,因为当我从网络驱动器上的文档运行宏时,它运行顺利。
我以为我可以用Application.Wait 简单地添加一个等待命令,但事实证明Word 2010 不支持此命令;它只在 Excel 中。
有没有人知道这个问题的根源、可能的解决方案,或者有什么方法可以给 Word 2010 一个等待命令?谢谢。
【问题讨论】:
-
检查this类似的问题和解决问题的答案...
-
谢谢。不知道我怎么错过了那个。