マクロルーティン#8(列のコピー)
1列コピーして別の列にそのまま貼り付ける
皆さんこんにちは。
今回は1列コピーして別の列にそのまま貼り付けるというコードの書き方をご紹介します。
--------------------------------------------------------------------------
その前に、、前回(マクロルーティン#7)の問題の解答3パターンは以下のとおりです。
・Rows("5:7").Copy Rows(9)
・Rows("5:7").Copy Range("A9")
・Rows("5:7").Copy Rows("9:11")
まずは、自分が好きな書き方を1つ覚えておくといいでしょう。
---------------------------------------------------------------------------
それでは今回の本題[列のコピー]の書き方をご紹介します。
◆目標
A列をコピーしてC列に貼り付ける
◆書くコード
Columns(”A”).Copy Columns(”C”)
◆解説
列を指定するときは「Columns」を使います。
Columnsの後ろにカッコ書きで列の名前をいれます。
マクロルーティン#1やマクロルーティン#4を参照していただくとわかるとおり、文字で指定するときはダブルクォーテーションで囲むという決まりになっています。
前回のマクロルーティン#7やマクロルーティン#6で行番号を指定するときにはダブルクォーテーションで囲んでませんね。
ということで、以下の書き方もできます。
◆解説その2
列番号で指定する書き方です。
A列の列番号を1として左に数えていきます。そうするとC列は3です。
この2パターンはカッコ内の書き方に気を付ければどちらも覚えられそうですね。
◆書く場所
マクロルーティン#0 (目次の4参照)
それでは問題です。
下図のようにA列B列をD列E列にそのままコピー&ペーストするマクロを書いてください。
解答はマクロルーティン#9へ。
頭ではかけても実際コードを実行してみるとエラーで止まることはよくあります。実際にコードを書いて実行してみましょう。