ヘルプの森~Excel・Access・Office全般ヘルプデスクサイト

No.001

セル、セル範囲を参照する 《Range・Cells・Rows・Columns》

2003/2007/2010/2013/2016/2019

パソコンにおける操作は、「対象を指定して操作指示する」というのが基本です。
Excelにおいては、対象の多くがセル、セル範囲であったりします。

今回は「セルを参照する」ための書き方をご案内します。
ここで1つ細かいことですが、「セルの参照」であって「セルの選択」ではありません。
日本語で「セルA1を選択する」の「セルA1を」の部分のことになります。

VBAでは、操作の対象であるセルの参照を最初に記述し、動作的指示である「選択する」などの部分を後に続けます。それは最後にご案内します。

では、細かい説明はなしにして、とにかくこのように書けばいいという例題を、4種類のプロパティからたくさん例題をご案内したいと思います。

<Range プロパティ>

1つのセルまたはセル範囲を参照します。
書き方は以下のとおり、カンマやコロン、ダブルクォーテーションの使い方に注意です。

  • Range("A1") ...セルA3を参照
  • Range("A1:A3") ...セルA1からA3の範囲を参照
  • Range("A1,A3") ...セルA1とA3を参照
  • Range("A1","A3") ...セルA1からA3の範囲を参照
  • Range("A1:A3,C1:C3") ...セルA1からA3とセルC1からC3の範囲を参照
  • Range("A:A") ...A列の範囲を参照
  • Range("1:1") ...1行目の範囲を参照
  • Range("1:3") ...1行目から3行目の範囲を参照
  • Range("名前") ...名前が定義された範囲を参照

Rangeプロパティの省略形として、角かっこを使用することができます。
例えば次のように、上記のダブルクォーテーションを取った書き方で、同じ参照をしてくれます。

  • [A1] ...セルA1を参照
  • [A1:A3] ...セルA1からA3の範囲を参照
  • [A:A] ...A列の範囲を参照

<Cells プロパティ>

単体セルを参照します。書き方は次のとおりです。

  Cells(行番号, 列番号)

かっこの中には、最初に行番号、カンマのあと列番号を指定します。

  • Cells(3,1) ...セルA3を参照
  • Cells(3,"A") ...セルA3を参照
  • Cells ...全セルを参照
  • Range(Cells(1,1),Cells(3,1)) ...セルA1からA3の範囲を参照

Cellsプロパティはわざわざな書き方なのですが、行番号や列番号に変数を使うことで、大変便利にセルを参照することができます。

<Rows プロパティ>

セル範囲の行を参照します。

  • Rows(3) ...行3の範囲を参照
  • Rows("1:3") ...行1:3の範囲を参照
  • Rows ...すべての行を参照

<Columns プロパティ>

セル範囲の列を参照します。

  • Columns(3) ...列3(列C)の範囲を参照
  • Columns("C") ...列Cの範囲を参照
  • Columns("A:C") ...列A:Cの範囲を参照
  • Columns ...すべての列を参照

さてセル、セル範囲を参照し、「選択する」という動作を加える場合、参照セルのあとに「.Select」を続けて書きます。

  参照セル.Select

例えば、具体的には次のような記述となります。

  • Range("A1").Select ...セルA1を選択する
  • Cells.Select ...全セルを選択する
  • Rows(3).Select ...3行目を選択する

簡単ですね。

ヘルプmemo

<Cells プロパティ>

構文:
.Cells(Row, Column)
引数:
・[Row] ...行のインデックス(行番号)を指定
・[Column] ...列のインデックス(行番号)を指定
ヒント:
・引数を指定せず Cells と指定すると、全セルを参照します。

関連ヘルプ

フォントの書式を設定する 《Font》
VBAで出てくる基礎用語について教えて
VBAでワークシート関数を使用する 《Value・Formula・FormulaR1C1》
セルに塗りつぶしの色を設定する 《Interior.Color》
ワークシート関数の答えをセルに出さないで取得する 《WorksheetFunction》
twitter hatena line pocket