俺の開発研究所

Ruby on Rails、Linux、Windowsを中心にIT技術系の備忘録とか。よく忘れるので。

*

VBAのCellsとRangeの使い方

      2014/10/11

VBAでセル指定する場合は、「Cells」というプロパティを使用する。

セルの範囲指定する場合は、「Range」というオブジェクトを使用する。

これらの使い方について調べてみた。

スポンサード リンク

Cellsプロパティ

Cellsプロパティは、第1引数が行番号(ROW)、第2引数が列番号(COLUMN)を指定する。

以下のようにすると、1行目・1列目であるセル「A1」の値を取得できる。

Rangeオブジェクト

Rangeオブジェクトは、「A1」のようにセルのアドレスを指定する。

以下のようにすると、セルアドレス「A1」の範囲オブジェクトを取得できる。

また、セルのアドレス2つを「:」(コロン)で繋ぐと、その範囲の範囲オブジェクトを取得できる。

同様に、第1引数と第2引数で、始まりのセルと終わりのセルをそれぞれ指定すれば、その範囲オブジェクトを取得することができる。

よく使用するのは、範囲選択する場合や、範囲内のセル値をクリアする場合かと思う。

使い方は、以下のようにする。

「Select」メソッドを使用して、範囲選択できる。

「ClearContents」メソッドを使用して、範囲内のセル値をクリアできる。

VBAでのCellsとRangeの使い方

Cellsプロパティでセルを指定し、値を取得する場合は行番号、列番号が必要になる。

しかし、多くの場所でその行番号、列番号をその都度数字で指定していると、もし行・列を追加することになったら大変です。

なので、必要なセルの行番号、列番号は定数で指定しておく方がよい。

そうすることで、修正箇所を定数の値のみにできるからです。

また、Rangeオブジェクトで範囲選択する場合は、引数2つで始まりのセルと終わりのセルを指定する方法が便利です。

用意したセルの行番号、列番号だけで、「A1」などのセルアドレスをわざわざ指定する必要がないからです。

以上。

 - VBA