2013-01-10 76 views
2

我有几个宏在某些单元格值发生更改时复制并粘贴图像。Excel vba运行时错误1004复制图像

逐步执行代码工作正常,但通过处理单元运行有时会出现以下错误:

运行时错误“1004”:

工作表类的粘贴方法失败。

我用下面的代码复制影像:我的机器上不会发生

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

的错误,但对一些用户机器。

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

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

+1

难道说,当复制完成后的表是不活跃?我会将'.Activate'上移一行来检查。 –

+0

在模块的较早版本中选择了相关工作表,因此在完成复制时应已激活。 – evoandy

回答

2

试试这个

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

调试器停止在粘贴行上,因此在DoEvents无法执行任何操作后停止。我不认为这是代码问题,因为它可以在我的电脑和其他许多设备上正常工作。为什么它不适用于某些电脑? – evoandy

+0

这不是唯一的..我已经删除了'.Activate',而不是那个添加'.Range(“A102”)' –

+0

你能解释一下为什么这会阻止发生运行时错误吗? – evoandy

相关问题