VBA~非連続セルを指定しよう~Excel
VBAで非連続セルを指定したい時はRangeオブジェクトの引数をカンマで区切ります。
Range("範囲の始まりのセル:範囲の終わりのセル")で指定できます。
Range("1つ目のセル,2つ目のセル")で指定できます。カンマで区切ることで3つ,4つ・・・・と指定できます。
複数の単一セルを参照
下のコードを実行するとセルA1,B3,C5に1が入力されます。
Sub test1() Range("A1,B3,C5") = 1 End Sub
範囲を含めて参照
Range("1つ目のセル,範囲の左上のセル:範囲の右下のセル")のように指定すると参照に範囲を含めることもできます。
下のコードを実行するとセルA1と範囲B3:C5に1が入力されます。
Sub test2() Range("A1,B3:C4") = 1 End Sub
指定したシートの離れたセルを参照
シートを指定するときはWorksheets("シート名")で指定できます。
下のコードを実行するとSheet2のセルA1,B3,C5に1が入力されます。
Sub test3() Worksheets("Sheet2").Range("A1,B3,C5") = 1 End Sub
ブックを指定して参照
ブックを指定するときはWorkbooks("ブック名")で指定できます。
Book1.xlsxというブックが開いた状態で下のコードを実行するとBook1.xlsxのSheet1のセルA1,B3,C5に1が入力されます。
Sub test4() Workbooks("Book1.xlsx").Worksheets("Sheet1").Range("A1,B3,C5") = 1 End Sub