古の時代から何人もの方がまとめている気はするけれども来たるExcel VBAエキスパートのインセンティブに向けて・・
RangeとCellsによるセルの取得方法は次の通り
単一セルの指定
Range("A2")="あああ"
Cells(2,3)="いいい"
Cells(2,"D")="ううう"
セルのアドレスや列記号などは、必ずダブルクォーテーション「"」で囲む
VBAではコメントアウトにシングルクォーテーション「'」を利用するため、
Range('A1')
とかしちゃうと普通にコンパイルエラーになる(^^;)
Range("A1")=あああ
とすると 「あああ」はここでは「文字列」ではなく「変数(名)」とみなされる ため、変数定義をしていない場合、コンパイルエラーになる
(⇒ ※「あああ」ではなく、「3」などただの数値であれば、エラーにならずにそのまま代入される)
Cellsは引数が
Cells(行番号,列番号)
の順番であることに注意
『(Rangeの)コロン「:」は引数のセルを頂点とする長方形領域、カンマ「,」はセル・領域の組み合わせ』を表す
Range("A3:C4")="えええ"
Range("A3,C4")="おおお"
後者はA3とC4の2カ所のみに「おおお」の文字列が代入されることに注意
以下のように「,(コンマ)」「:(コロン)」は併用もできる
Range("A5,B6:C8") = "かかか"
RangeとCellsの併用
次の3つは同義である
Range("A1:C2") = "ききき"
Range(Range("A1"),Range("C2")) = "ききき"
Range(Cells(1,1),Cells(2,3)) = "ききき"
下2つは「,(コンマ)」を使っているが、下の通り、引数として指定された2つのセルを頂点とする長方形領域が参照される
主な参考資料
この1冊で合格! 永井雅明のExcel VBA ベーシック テキスト&問題集



