HOME > エクセルVBA >セルの操作2「Cellsプロパティ」「Rangeプロパティ

Cellsプロパティで範囲選択

 セルの範囲選択の方法にRangeプロパティだけでなく、Cellsプロパティを使用する方法もあります。

単一セルの選択

 Cellsプロパティは列、行ともに数字で表記することが出来ます。Rangeプロパティみたいに列をアルファベットで表示することも出来ます。次のステートメントではどちらもセルD2を選択することになります。

Cells(2,4).Activate
Cells(2,"D").Activate

全セルの選択

 すべてのセルを選択することも出来ます。

Cells.Select

Cellsプロパティの特徴

 Cellsプロパティは単一のセルか、全セルしか選択することは出来ません。複数の範囲を選択することはできません。また、名前の定義で作られた選択範囲も指定することが出来ません。

 しかし、Rangeプロパティと組み合わせてCellsプロパティで複数範囲を選択することが出来ます。

Range(Cells(1,3),Cells(5,4)).Select

Cellプロパティの特徴

RengeプロパティとCellsプロパティの使い分け

 RangeプロパティとCellsプロパティを説明してきましたが、Cellsプロパティは複数範囲を選択するときにRangeプロパティを組み合わせなければならなかったり、名前の定義を利用できなかったりとRangeプロパティに比べて使い難いと思われます。

 しかし、CellsプロパティにはRangeプロパティにない大きなメリットがあります。それはCellsプロパティには変数を使用することが出来るのです。VBAを覚え始めた初めのころはRangeプロパティを中心に使用すると思うが、変数の使い方を覚えるとCellsプロパティを頻繁に利用することでしょう。変数を使うことによってとても柔軟なプログラムを書くことが出来ます。

Cellsプロパティに変数を使用した例

 Cellsプロパティに変数を使用した例です。セルA1からセルA10までに順番に数字を入力していきます。セルA1を選択するのにRangeプロパティを使用していますが、Cells(1,1)でももちろん問題はありません。

 アイデアひとつでとても複雑な動きをさせることが出来るでしょう。

Dim my_a As Integer

Sub cell_hennsuu()
  Range("a1").Select
  For my_a = 1 To 10
  Cells(my_a, 1) = my_a
  Next my_a
End Sub

Cellプロパティに変数を使用する例

セルの操作1  エクセル職人  セルの操作3

▲TOPへ移動