VBAで基本になるRangeプロパティと、Cellsプロパティの記述方法と参照範囲について解説します。
RangeプロパティやCellsプロパティを使って、Rangeオブジェクトを取得します。
Rangeプロパティの記述方法と参照範囲
記述例 | 参照範囲 |
---|---|
Range(“A1”) | A1を参照(ダブルクオーテーションで囲む) |
Range(“A1,B3”) | A1とB3を参照(カンマで区切る) |
Range(“A1:D5”) | A1~D5迄のセルを参照(コロンで区切る) |
Range(“A1″,”D5”) | A1~D5迄のセルを参照 |
Range(Cells(1,1),Cells(5,4)) | A1~D5迄のセルを参照 |
Range(“A1:D5,F2:G7”) | A1~D5迄のセル と F2~G7迄のセルを参照 |
Rangeプロパティの記述例
Sub サンプル3295_1()
Range("A1") = "こんにちは"
Range("A2,C2") = 30
Range("A3:D3") = 40
Range("A4", "D4") = 40
Cells(6, 1) = 50
Cells(7, "B") = 60
Range(Cells(8, 1), Cells(9, 5)) = 70
End Sub
コード解説
Range(“A1”) = “こんにちは”
’セルA1に「こんにちは」を入力します。
Range(“A2,C2”) = 30
’セルA2 と セルC2を指定するときは、(“A2,C2”) のように「,」カンマで区切ります。
Range(“A3:D3”) = 40
’セルA3からセルD3までの範囲を指定するときは、(“A3:D3”) のように「:」コロンで区切ります。
Range(“A4”, “D4”) = 40
’セルA4からセルD4までの、範囲を指定するときの別の書き方です。
(“A4″,”D4”)のように「,」カンマで区切ります。
Valueプロパティの省略
RangeプロパティやCellsプロパティは、次のようにValueプロパティが省略されます。
Range(“A1”).Value = 20
→ Range(“A1”) = 20
Cells(6, 1).Value = 50
→ Cells(6, 1) = 50
Valueプロパティの省略
Cellsプロパティの記述方法と参照範囲
記述例 | 説明 |
---|---|
Cells(行,列) | Cells(行の番号,列の番号) |
Cells(2,3) | セルD2(上から2行目の左から3列目のセル) |
Cells(2,”D”) | セルD2(上から2行目のD列を指定) |
Cells | すべてのセルを対象 |
Cellsプロパティの記述例
Sub サンプル3295_2()
Range("A1") = 20
Range("A2,C2") = 30
Range("A3:D3") = 40
Range("A4", "D4") = 40
Cells(6, 1) = 50
Cells(7, "B") = 60
Range(Cells(8, 1), Cells(9, 5)) = 70
End Sub
コード解説
Cells(5, 1) = 50
’CellsプロパティでセルA5の書き方は、(5,1)のように「,」カンマで区切ります。
(行,列 )カッコの中は、行と列の順になります。
Cells(7, “B”) = 60
’CellsプロパティでセルB6の書き方は、(7,”B”)のように(7行目,”B列”)という書き方もあります。
Range(Cells(8, 1), Cells(9, 5)) = 70
’セルA8からセルE9までを指定するときは、Cells()とCells()を「,」カンマで区切ります。
マクロの実行結果
Cellsプロパティとオブジェクト
Cellsプロパティはオブジェクトを指定しない場合は、アクティブシートのセルが取得されます。
Sub サンプル3295_3()
Cells(2, 3) = "練習"
End Sub
コードの解説
Cells(2, 3) = “練習”
’上から2行目の左から3列目に「練習」を入力します。
マクロの実行結果
アクティブのワークシートが指定されます。
SelectionとActiveCellを使ってセルを指定する
SelectionとActiveCellを使ってセルを指定し、データを入力します。
Sub サンプル3295_4()
Range("B2:C5").Select
Selection.Value = "Excel"
ActiveCell.Value = "マクロ"
End Sub
コード解説
Range(“B2:C5”).Select
’セルB2からセルC5を指定します。
Selection.Value = “Excel”
’指定したセルに、”Excel”を入力します。
ActiveCell.Value = “マクロ”
’アクティブになっているセルを指定して、”マクロ”を入力します。
まとめ
Rangeプロパティの記述方法と参照範囲
記述例 | 説明 |
---|---|
Range(“A1”) | セルA1 |
Range(“A1,B3”) | セルA1とセルB3(カンマで区切る) |
Range(“A1:D5”) | セルA1~セルD5迄のセル(コロンで区切る) |
Range(“A1:D5,F2:G7”) | セルA1~セルD5迄のセルとセルF2~セルG7迄のセル |
Range(“A1″,”B5”) | セルA1~セルB5迄のセル |
Range(Cells(3,1),Cells(5,6)) | セルA3~セルF5迄のセル |
Cellsプロパティの記述方法と参照範囲
記述例 | 説明 |
---|---|
Cells(行,列) | Cells(行の番号,列の番号) |
Cells(2,3) | セルD2(上から2行目の左から3列目のセル) |
Cells(2,”D”) | セルD2(上から2行目のD列を指定) |
Cells | すべてのセルを対象 |
SelectionとActiveCellでデータを入力する
Selection.ValueとActiveCell.Valueを使って、指定したセルにデータを入力する。