运行时错误4605 Excel VBA将多个范围复制到Word文档

时间:2018-08-02 15:03:57

标签: excel vba excel-vba

我当前正在编写一个宏,以将多个不连续的范围复制并粘贴到Word文档中。几乎每次都可以完美运行。问题是,有时使用宏时会出现运行时错误4605。我已经尝试了一些方法:找到的DoEvents, "application.cutcopymode = false", EmptyClipboard()函数,用Application.Wait (Now + TimeValue("0:00:01"))添加了等待时间
没什么真正起作用的,其中一些比其他修复的更多,例如,“ application.cutcopymode = false”使该错误很少发生,但仍然发生。
现在输入代码:

For intCounter = 2 To 27
        If intCounter > 2 Then wdApp.Selection.InsertBreak Type:=wdPageBreak

'------------------------------------------------------------
        Set rng1 = Worksheets(intCounter).Range("E2:G3")
            rng1.Copy
        On Error Resume Next
        wdApp.Selection.PasteExcelTable False, True, False

'------------------------------------------------------------
        Set rng2 = Worksheets(intCounter).Range("E6:G7")
            rng2.Copy
        On Error Resume Next
        wdApp.Selection.PasteExcelTable False, True, False
 Next intCounter  

我知道在每个范围声明之后使用copy命令是很丑陋的,但是如果我不这样做,将会出现一个错误,那就是它们必须是连续的。
有没有办法解决这个错误,还是我必须放弃这个想法,做一个临时的excel工作表,然后从那里复制它?

谢谢 硕士

0 个答案:

没有答案