Excelマクロ(VBA) 「Cells」・「Rows」・「Columns」の使い方

VBA実践編
デヴ
デヴ

Range以外にもセル・列・行を
指定する方法があります

前回は、Rangeオブジェクトでセル・列・行を選択する方法を解説しました。
セル・列・行の指定方法はRange以外にもあるので、Rangeと一緒に覚えてしまいましょう。
また1つ新しい技を覚えて、自分のものとしてください。

この記事では、 マクロ(VBA)の初心者の方のために、 「Cells」・「Rows」・「Columns」でセル・列・行を指定する方法を、僕が当時知りたかったことも含めて、まとめてあります。
今、 「 マクロ(VBA)を覚えたい!」と考えている方の参考となれば幸いです!
この記事を読み終えるころには、 「Cells」・「Rows」・「Columns」 でセル・列・行を指定できるようになっていますよ!

スポンサーリンク

① Cellsでセルを指定する

Cellsについて

「Rangeオブジェクト」では、セルを複数選択(範囲選択)することができましたが「Cells」は単体のセルを指定する書き方になります。
自動化したい処理によっては、”A1″のように文字で指定する方法だと使い勝手が悪い場合があります。
そんな時に使われるのが「Cells」です。
僕は断然「Range」の方が使いやすいのですが、「Cells」を使わざるを得ない場合があったので、「Range」とセットで覚えておいた方が良いと思います。

Cellsでセルを指定するコードの書き方

「Cells」で、セルを指定するコードは以下の通りです。
書き方は2種類あるので、注意して見てください。

実際に「Visual Basic Editer」に記載して、マクロを実行してみると
B3セルに、「ボーン・レス」
C2セルに、「デ部」と入力されるはずです。

Sub Cellsの使い方()

‘B3セルに「ボーン・レス」と入力
Cells(3, 2) = “ボーン・レス”

‘C2セルに「ボーン・レス」と入力
Cells(2, “C”) = “デ部”

End Sub

【実行結果】

実行結果の画像

このように、「Cells」でセルを指定するには(行番号,列番号)の形もしくは、 (行番号,”列記号”) の形で記載します。
番号で書く際は、「”」は不要です。

「Cells(3, 2)」は、3行目の2列目=B3セルを表します。
「Cells(2, “C”)」は、C列の2行目=C2セルを表します。

Rangeと違い視覚的にわかりにくいので、初めの内は混乱するかもしれませんが
「Cells」は、「行→列の順で書く」と覚えてしまいましょう。

「Cells」では複数のセルを指定することは出来ません

②Columnsで列を指定する

Columnsについて

「Columns」は直訳すると、「列」という意味になります。
なので文字通り、「Columns」は列全体を指定する際に使います。
「Range」の場合は、Range(“A:A”) のように記載しましたが、「Columns」も「Cells」と同じように行番号や列番号を用いて記載する形になります。

Columnsで列を指定するコードの書き方

「Columns 」で、列を指定するコードは以下の通りです。
こちらも書き方は2種類あるので注意して見てください。

実際に「Visual Basic Editer」に記載して、マクロを実行してみると
B列全体に「2列目」
D列全体に「4列目」と表示されるはずです。

Sub Columnsの使い方()

‘B列全体に「2列目」と入力する
Columns(2) = “2列目”

‘D列全体に「4列目」と入力する
Columns(“D”) = “4列目”

End Sub

【実行結果】

実行結果の画像

このように、「Columns」で列を指定するには(列番号の形もしくは、 (”列記号” の形で記載します。
「Columns(2)」は、2列目=B列を表します。
「Columns(“D”)」は、D列=4列目を表します。

複数範囲の列を指定する場合は、「Columns(“A:D”)」のようにします。
これで、A~D列の指定になります。

列番号で記載する場合は、複数の列を指定することは出来ません。

③Rowsで行を指定する

Rowsについて

「Rows」は直訳すると、「行」という意味になります。
なので文字通り、「Rows」は行全体を指定する際に使います。
「Range」の場合は、Range(“1:1”) のように行番号を用いて記載しました。
「Rows」も同じように行番号を用いて記載する形になります。

Rowsで行を指定するコードの書き方

「Rows」で、行を指定するコードは以下の通りです。
実際に「Visual Basic Editer」に記載して、マクロを実行してみてください。
2行目に、「2行目」
4~5行目に、「4~5行目」と入力されるはずです。

Sub Rowsの使い方()

‘2行目全体に「2行目」と入力する
Rows(2) = “2行目”

‘4~5行目全体に「4~5行目」と入力する
Rows(“4:5”) = “4~5行目”

End Sub

【実行結果】

実行結果の画像

このように「Rows」で行を指定する際は、(行番号)の形で記載します。
複数指定する際は、(“行番号:行番号”)の形で記載します。
「Range」と大きな違いはないので、行の指定は「Rows」の方が分かりやすいかもしれません。

④まとめ

Cellsでセルを指定するコードは、以下の2通り
①Cells(3, 2) ←B3セルを表す

または
②Cells(2, “C”)←C2セルを表す



Columnsで列を指定するコードは、以下の2通り
Columns(2)  ← 2列目を表す
または
Columns(“D”) ← 4列目を表す

Columnsで複数の列を指定するコードは、
Columns(“A:D”)←A列~D列を表す



Rowsで行を指定するコードは、

Rows(2) ← 2行目を表す
Rows(“1:3)
 ← 1~3行目を表す

この記事では、 「Cells」・「Rows」・「Columns」 の使い方について解説しました。

VBA以外にも仕事に役立つ情報を紹介しています。
スポンサーリンク
タイトルとURLをコピーしました