VBA~セルを選択しよう~Excel
VBAでセルを選択したい場合はRange.Selectメソッドで選択できます。シートがアクティブでないと選択できないので、シートやブックを指定する時はアクティブにしてから選択します。
単一セルの選択
下のコードを実行するとセルA1が選択されます。
Sub test1() Range("A1").Select End Sub
範囲の選択
範囲を指定したい時はRange("範囲の左上のセル:範囲の右下のセル")で指定できます。 下のコードを実行するとセルA1からセルC3の範囲が選択されます。
Sub test2() Range("A1:C3").Select End Sub
指定したシートのセルを選択
シートを指定するときはWorksheets("シート名")で指定できます。下のコードを実行するとSheet2のセルA1が選択されます。
Sub test3() Worksheets("Sheet2").Activate Worksheets("Sheet2").Range("A1").Select End Sub
ブックを指定してセルを選択
ブックを指定するときはWorkbooks("ブック名")で指定できます。Book1.xlsxというブックが開いた状態で下のコードを実行するとBook1.xlsxのSheet1のセルA1が選択されます。
Sub test4() Workbooks("Book1.xlsx").Activate Workbooks("Book1.xlsx").Worksheets("Sheet1").Range("A1").Select End Sub
最終行のセルを選択
指定した列のデータの入力された最終行のセルを選択したい場合はCells(Rows.Count, 列番号).End(xlUp).Selectで取得できます。下のコードを実行するとA列のデータの入力されている最終行のセルが選択されます。
Sub test5() Cells(Rows.Count, 1).End(xlUp).Select End Sub
最終列のセルを選択
指定した行のデータの入力された最終列のアドレスを取得したい場合はCells(行番号, Columns.Count).End(xlToLeft).Selectで取得できます。下のコードを実行すると行1のデータの入力されている最終列のセルが選択されます。
Sub test6() Cells(1, Columns.Count).End(xlToLeft).Select End Sub