「複数セルに同じ値を入れる」以外にも、Rangeオブジェクトを使うと離れたセルをまとめて色付けしたり、数式を入れたり、書式を変えたりできます。初心者向けに例を交えて紹介しますね。
色を変える
複数セルをまとめて背景色や文字色を変えられます。
Sub 色をまとめて変える()
With Range("A1, C3:D5")
.Interior.Color = RGB(255, 255, 153) ' 背景を薄い黄色
.Font.Color = RGB(0, 102, 204) ' 文字を濃い青
End With
End Sub
VB👉 A1セルとC3~D5の範囲が同じ色に変わります。
数式を入れる
複数セルに同じ数式を一度に入力できます。
Sub 数式をまとめて入れる()
Range("B2, D4, F6").Formula = "=SUM(A1:A5)"
End Sub
VB👉 B2・D4・F6に同じ「合計」数式が入ります。
書式を設定する
文字サイズや太字なども一括で適用可能です。
Sub 書式をまとめて設定()
With Range("A1, C2, E3")
.Font.Bold = True ' 太字
.Font.Size = 14 ' 文字サイズ
.HorizontalAlignment = xlCenter ' 中央揃え
End With
End Sub
VBループで個別処理
複数セルをまとめて指定しつつ、セルごとに違う処理もできます。
Sub ループで処理()
Dim c As Range
For Each c In Range("A1, C2, D5")
c.Value = c.Address & " に入力"
Next c
End Sub
VB👉 A1には「$A$1 に入力」、C2には「$C$2 に入力」…とセルごとに違う値が入ります。
まとめ
- 同じ値を入れる →
.Value - 数式を入れる →
.Formula - 色を変える →
.Interior.Colorや.Font.Color - 書式を変える →
.Font.Size,.Font.Bold,.HorizontalAlignment - セルごとに処理 →
For Eachでループ
こうした操作を組み合わせると、離れたセルを一括で「入力・装飾・計算」できるようになります。
