VBAで基本になるオブジェクトの書き方について説明します。
Rangeオブジェクトは、実体がありません。
RangeプロパティやCellsプロパティを使って、Rangeオブジェクトを取得することになります。
Rangeプロパティの書き方
コード内、Wクリックでコピーできます。
Sub サンプル2005() 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
Range("A1") = 20
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")のように「,」カンマで区切ります。
Cellsプロパティの書き方
コード内、Wクリックでコピーできます。
Sub サンプル2005() 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()を「,」カンマで区切ります。
●マクロの実行結果
Worksheetオブジェクト
Worksheets("Sheet1")
ワークシートの位置(順番)に関係なく、"Sheet1"をオブジェクトにします。
Worksheets(1)
Sheets(1)
ワークシート名に関係なく、1番目にあるシート(Sheet2)をオブジェクトとします。
Workbookオブジェクト
Workbooks("Book1")
ワークブックの位置に関係なく、"Book1"をオブジェクトにします。
Workbooks(2)
ワークブックの位置に関係なく、2番目に開かれたブック(Book2)をオブジェクトとします。
以上で「Rangeなどのオブジェクトの書き方」の説明を終わります。