2016-04-13 19 views
0

値をコピー&ペーストしようとしていますが、これは実際に難しい作業ではありません。ペーストVBA Excel 2010で特別なエラーが発生する

セル値の値をコピーするために、私はPaste.Special x1PasteValuesを使用します。 1004年、私はそれのための解決策を見つけることができません:私は、実行時エラーが発生するコードを実行した場合

Set wsd = Sheets("Data") 
wsd.Select 
With wsd 
.Range("L5:X5").Select 

.PasteSpecial x1=PasteValues  <~~ Runtime error: 1004   
'.PasteSpecial Paste:=xlPasteValues <~~ equivalent to the above 
'.PasteSpecial      <~~ This works, but only pastes the formula 
'.Paste        <~~ This pastes the formula 

End With 

:ここ

は面白い部分が来ます。フォーマットを貼り付ける場合も同じことが起こります。

多分問題は、マクロがActiveXボタンで書かれていることです。そのため、私はwsdで使用する必要があります。

大変助かります。前もって感謝します!

編集:ブックを切り替えて手動でマクロを起動する(マクロボタンではなく)問題が発生した同様のトピックが見つかりました。ワークシート間で切り替えるので、同じ問題がコード内で発生する可能性がありますか?

Excel VBA runtime error 1004

答えて

0

あなたは、シートを参照するセルを選択するが、その後、そうする範囲を与えることなくに貼り付けるために、再度シートオブジェクトを参照しているように見えます。これはExcel 2013で動作しますが、他のバージョンの構文で再生する必要があります。

Set wsd = Sheets("Data") 
With wsd 
    .Range("L5:X5").PasteSpecial xlPasteValues, xlPasteSpecialOperationNone, False, False 
End With 
+1

ありがとうございました! :) – yfro

+0

ハハ・サー、あなたは大歓迎です – AranDG

関連する問題