Excel VBAでセルを選択するにはRangeプロパティとCellsプロパティを使用します。
それぞれどのように使い分ければいいのかを紹介します。
使い分けの前にRangeプロパティとCellsプロパティでそれぞれ何ができるのか確認していきます。
Rangeプロパティ
- 単一セルを選択
例:Range(“A1”).Select - 複数のセルを選択
例:Range(“A1:C7”).Select - 名前付き範囲の選択
例:Range(“サンプル”).Select
Cellsプロパティ
- 単一セルを選択
例:Cells(1,1).Select - 全てのセルを選択
例:Cells.Select
Rangeプロパティのほうがさまざまな範囲選択が可能ですが、Cellsプロパティにしかできないことがあります。選択されている範囲の中からセルを選択することができます。
- 指定された範囲でのセルの選択
例:Selection.Cells(1,2).Select
動作:選択されている範囲の1行2列目を選択します。
「指定された範囲でのセルの選択」がCellsプロパティの最大の特徴になります。
使い分けるポイント
それぞれのプロパティで何ができるか確認したところで、使い分けをまとめていきます。
★Rangeプロパティを使ってできること
- 複数セルの選択
- 名前付き範囲の選択
★Cellsプロパティを使ってできること
- 指定された範囲でのセルの選択
★どちらにもできること
- 単一セルの選択
どちらでも使える「単一セルの選択」は、可読性という点においてRangeのほうが良いです。