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セルに、「デ部」と入力されるはずです。
‘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」は、「行→列の順で書く」と覚えてしまいましょう。
②Columnsで列を指定する
Columnsについて
「Columns」は直訳すると、「列」という意味になります。
なので文字通り、「Columns」は列全体を指定する際に使います。
「Range」の場合は、Range(“A:A”) のように記載しましたが、「Columns」も「Cells」と同じように行番号や列番号を用いて記載する形になります。
Columnsで列を指定するコードの書き方
「Columns 」で、列を指定するコードは以下の通りです。
こちらも書き方は2種類あるので注意して見てください。
実際に「Visual Basic Editer」に記載して、マクロを実行してみると
B列全体に「2列目」
D列全体に「4列目」と表示されるはずです。
‘B列全体に「2列目」と入力する
Columns(2) = “2列目”
‘D列全体に「4列目」と入力する
Columns(“D”) = “4列目”
End Sub
【実行結果】
このように、「Columns」で列を指定するには(列番号)の形もしくは、 (”列記号”) の形で記載します。
「Columns(2)」は、2列目=B列を表します。
「Columns(“D”)」は、D列=4列目を表します。
これで、A~D列の指定になります。
列番号で記載する場合は、複数の列を指定することは出来ません。
③Rowsで行を指定する
Rowsについて
「Rows」は直訳すると、「行」という意味になります。
なので文字通り、「Rows」は行全体を指定する際に使います。
「Range」の場合は、Range(“1:1”) のように行番号を用いて記載しました。
「Rows」も同じように行番号を用いて記載する形になります。
Rowsで行を指定するコードの書き方
「Rows」で、行を指定するコードは以下の通りです。
実際に「Visual Basic Editer」に記載して、マクロを実行してみてください。
2行目に、「2行目」
4~5行目に、「4~5行目」と入力されるはずです。
‘2行目全体に「2行目」と入力する
Rows(2) = “2行目”
‘4~5行目全体に「4~5行目」と入力する
Rows(“4:5”) = “4~5行目”
End Sub
【実行結果】
このように「Rows」で行を指定する際は、(行番号)の形で記載します。
複数指定する際は、(“行番号:行番号”)の形で記載します。
「Range」と大きな違いはないので、行の指定は「Rows」の方が分かりやすいかもしれません。
④まとめ
①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」 の使い方について解説しました。