3行マクロコピーとペーストの範囲選択について詳しく解説動画解説 Excel

データの転記処理の基本コピーと範囲指定をしっかり

コピーと範囲指定
コピーと範囲指定

動画でExcelマクロ解説

コピーと範囲指定

動画版「Excelの3行マクロ」です。
今回はコピーと転記について基本を詳しく解説します。今までにも何回かをコピーして、転記するというマクロが登場したと思いますが、ここでもう一度範囲の指定方法をしっかり解説したいと思います。CopyメソッドとPastメソッドの違いやDestinationの利用などの説明をします。

VBAでコピーして張り付ける

この動画では、選択した範囲をコピーして指定した位置に張り付ける操作を記録のマクロで実行します。
その後、記録のマクロをリメイクして自分が必要なマクロに変更していくという流れを説明しています。

記録のマクロで作成されたコードは次のようなものでした。

Sub コピー転記()
'   記録で作ったマクロ
   Range("B2:B5").Select
    Selection.Copy
    Range("D2").Select
    ActiveSheet.Paste
End Sub

それをいろいろ説明する過程で次のような形に変化させました。

NAMAE5

特に汎用的に使うマクロであれば、範囲を指定することはとても面倒ですので、サンプルのコピー転記5のように、 ActiveCell.CurrentRegion.Copy のようなコードに変更することで、現在の選択範囲を取得することができます。
CurrentRegionは、現在の選択範囲を表す Range オブジェクトを返します。 現在の選択範囲は、空白の行と空白の列の任意の組み合わせで囲まれた範囲です。

Sub コピー転記5()
    ActiveCell.CurrentRegion.Copy Destination:= _
    ActiveCell.Offset(0, 7)
End Sub