セルのコピー

広告

セルをコピーする方法を確認します。コピーしたセルをそのまま他の位置に貼り付ける事も出来ますし、クリップボードに保管した後で、「Paste」メソッドで貼り付ける事もできます。(Pasteメソッドについては『セルの貼り付け』を参照して下さい)。

セルをコピーするには、切り取りたいRangeオブジェクトに対して「Copy」メソッドを使います。

Dim range1 As Range

Set range1 = Range("A1")
range1.Copy Destination:=Range("B1")

コピーしたセルを直接貼り付ける場合には「Destination」引数を使って貼り付け先のRangeオブジェクトを指定します。コピーしたRangeオブジェクトがセル範囲であった場合でも、貼り付ける先のRangeオブジェクトは単独のセルを指定します。このセルは貼り付けるセルの左上のセルになります。

まとめて次のように記述しても構いません。

Range("A1:B3").Copy Destination:=Range("B1")

サンプルプログラム

では簡単なサンプルで試してみましょう。

下記のようなExcelファイルを用意します。

セルのコピー

表(セル範囲B2:C5)をまとめてコピーし、セルE2の位置へ貼り付けます。

testcelledit4.bas

Sub テスト()

    Dim range1 As Range
        
    Set range1 = Range("B2:C5")
    range1.Copy Destination:=Range("E2")
    
End Sub

上記マクロを実行すると次のようになります。

セルのコピー

( Written by Tatsuo Ikura )