环境:Word 2016 for Mac。
以下代码(适用于Word 2007和2010适用于PC和Word 2011 for Mac)在粘贴时抛出运行时错误4605:
Set oSubRange = wdDoc.Sections(i).Range ' we are in a loop...
oSubRange.End = oSubRange.End - 1
oSubRange.Copy
Set wdSubDoc = Documents.Add
wdSubDoc.Activate
Set oRange = wdSubDoc.Content
oRange.Collapse (wdCollapseEnd)
oRange.PasteAndFormat (wdFormatOriginalFormatting)
我的想法是,这可能是一个沙盒问题,但我不这么认为,因为我在保存文件方面没有任何问题,而且无论如何这都不是保存的。其他想法是剪贴板没有复制,也许有一个时间问题。我尝试在副本之后插入DoEvents(),因为我已经在不同的错误4605场景中看到了这一点(尽管有不同的错误)。还尝试使用Active MVC将在另一个论坛中由MS MVP建议的ActiveDocument.Range.PasteAndFormant(wdFormatOriginalFormatting)(同样,错误4605)。这些解决方案都不起作用。
所以,我被卡住了。