5.15 ワークブック間でのコピーと貼り付け
ワークブック間でのコピーや貼り付けです。コピーや貼り付けの方法で使うメソッドは同じです。違うのは、ワークブックとワークシートを指定する所です。
ワークシートの指定方法
1つのセルをコピーする例で説明します。Book1.xlsBook2.xlsという2つのワークブックが開いてあったとします。どちらにもSheet1Sheet2Sheet3というシートがあります。

このような状態で、例ではBook1.xlsSheet2セルA2Book2.xlsSheet1セルA1にコピーしています。なお、マクロはBook1.xlsSheet1に書いてあることにします。


Sub prcCellCopyWorkbookToWorkbook()

    Workbooks("Book1.xls").Worksheets("Sheet1").Range("A2").Copy
    Workbooks("Book2.xls").Worksheets("Sheet2").Range("A1").PasteSpecial

End Sub

ポイントは、ワークブックの指定とワークシートの指定を行った部分です。もちろん、コピー(切取り)貼り付けであれば、Destination:=による高速…も可能です。

なお、Book1.xlsSheet2に書いてあるという前提なので、コピー元のRange("A2")にはWorkbooks("Book1.xls").Worksheets("Sheet1")を指定しなくてもかまいませんが、あえて指定しました。

それと、他にも範囲コピー・貼り付けや、行コピー・貼り付け、行コピー・挿入、切り取り・貼り付け(行の場合は挿入)などがありますが、ワークブックの指定とワークシートの指定が「加わる」だけで方法は同じです。
Copyright(C) 1999-2006 結城圭介。 All rights reserved