Interiorオブジェクトと背景色

広告

セルの背景色などセル自身の色などに関する情報を管理しているオブジェクトはInteriorオブジェクトです。Rangeオブジェクトの「Interior」プロパティを使ってInteriorオブジェクトを取得します。

Dim interior1 As Interior

Set interior1 = Range("A1").Interior
interior1.ColorIndex = 3

まとめて次のように記述しても構いません。

Range("A1").Interior.ColorIndex = 3

背景色の設定

Interiorオブジェクトは主にセルの背景色の設定に使われます。背景色を設定するにはInteriorオブジェクトの「ColorIndex」プロパティに値を設定します。「ColorIndex」プロパティは文字の色や罫線の色で使ったものと同じです。全部で57種類の色が用意されており、0から56のインデックス番号で指定します。(詳しくは『文字色の設定』を参照して下さい)。

では簡単なサンプルで試してみましょう。

testcellinterior1.bas

Sub テスト()
    
    Dim i As Integer, j As Integer
    
    For i = 1 To 8
        For j = 1 To 7
            Cells(i, j).Interior.ColorIndex = (i - 1) * 7 + j
            Cells(i, j).Value = (i - 1) * 7 + j
        Next j
    Next i

End Sub

上記マクロを実行すると次のようになります。

背景色の設定

( Written by Tatsuo Ikura )