Excel vba运行时错误1004复制图像

时间:2013-01-10 12:06:16

标签: excel vba excel-vba

我有几个宏可以在更改某些单元格值时复制和粘贴图像。

单步执行代码工作正常但通过寻址单元格运行有时会出现以下错误:

运行时错误'1004':

Worksheet类的粘贴方法失败。

我使用以下代码复制图像:

    With Sheets("Quote")
    .Shapes("ExampleQuoteImage").Copy
    .Activate
    .Paste Destination:=Range("A102")
End With

我的开发计算机上没有发生错误,但在某些用户计算机上发生错误。

每次都不会在同一行中断,但会在复制图像的任何点处中断。如果从断开点运行它,宏的其余部分将正常运行。

可能是并发错误还是与剪贴板有关?

2 个答案:

答案 0 :(得分:2)

试试这个

With ThisWorkbook.Sheets("Quote")
    .Shapes("ExampleQuoteImage").Copy
    DoEvents
    .Paste Destination:=.Range("A102") 
End With

答案 1 :(得分:0)

由于剪贴板错误而发生错误。 解决方法是清除图像剪贴板。 我通过添加以下代码来做到这一点:

            With [a1]
                .Select
                .Copy [a1]
                Application.CutCopyMode = False
            End With

此代码仅将a1复制到a1并确保复制模式已关闭。这将导致剪贴板被清除。 一定要与DoEvents结合使用