2013-01-10 77 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

相關問題