複雑なコピー/貼り付けの演習を行うマクロを作成しています。概念的には非常に簡単ですが、私は 1 つの場所で立ち往生しています。さまざまなデータ ブロックはすべて、さまざまな名前付き範囲で識別されます。この名前のリストを繰り返し処理し、各名前を引数として関数 (実際にはサブルーチンですが、考え方は同じです) に渡す必要があります。データのソースは 1 つのワークブックにあり、宛先は別のワークブックにあります。
これが私が持っているものです(データの1ブロックのみ):
Private Sub copyABU()
copyPaste(ThisWorkbook.Names("myRange1").RefersToRange)
copyPaste(ThisWorkbook.Names("myRange2").RefersToRange)
copyPaste(ThisWorkbook.Names("myRange3").RefersToRange)
//etc
End Sub
Private Sub copyPaste(thisRange As Range)
Windows(someworkbook).Range(thisRange).Copy
Range(thisRange).PasteSpecial Paste:=xlPasteValues
End Sub
残念ながら、これで実行時エラーが発生します。タイプの不一致があると思いますが、これについてはよくわからず、何が欠けているのかわかりません。なぜこれが失敗するのか誰にもわかりますか?(エクセル2010を使用しています。)
ありがとう!