セルの背景をいろいろな色で塗りつぶしたり、背景にいろいろな種類の網掛けをすることがります。
塗りつぶしはセルのInteriorオブジェクトの「ColorIndexプロパティ」または「Colorプパティ」に希望する色を設定します。網掛けは同様にセルのInteriorオブジェクトの「Patternプロパティ」で網掛けの種類を設定し、「PatternColorIndexプロパティ」で網掛け色の設定をおこないます。
ここではこれらについて解説します。
セルを塗りつぶす
次のような表があります。セル範囲 C2から G2にかけて背景色を濃ブルーにて文字色を白色に、セル範囲 B3から B10 にかけて背景色を黄色にします。

ここでは色の設定について、パレット番号で設定する「ColorIndexプロパティ」を利用したマクロと、RGB値を使用する「Colorプロパティ」を利用したマクロの2種類です。
◆ ColorIndex(インデックス番号)
Sub セル色1()
With Range(“C2:G2”)
.Interior.ColorIndex = 5
.Font.ColorIndex = 2
End With
Range(“B3:B10”).Interior.ColorIndex = 6
End Sub
パレットの色に対応するインデックス番号が「ColoIndex」になります。
1 から 56まであります。
このようにセルの背景色をインデックス番号で指定する場合は
Rnageオブジェクト.Interior.ColorIndex = 色のインデックス番号
となります。
また文字色をインデックス番号で指定する場合は
RnageオブジェクトFont.ColorIndex = 色のインデックス番号
となります。
反対にセルの背景色からインデックス番号を取得するには次のようになります。
Dim IdxCol as long
IdxCol = Range(“該当するセル番号”).Interior.ColorIndex
◆ Color (RGB値)
Sub セル色2()
With Range(“C2:G2”)
.Interior.Color = RGB(0, 0, 255)
.Font.Color = RGB(255, 255, 255)
End With
Range(“B3:B10”).Interior.Color = RGB(255, 255, 0)
End Sub
RGBを使って色を指定する方法です。
引数 red で赤、green で緑、 blue で青で、それぞれの強度を 0 ~ 255 の数字で指定します。
セルの背景色をRGB で指定する場合は
Rnageオブジェクト.Interior.Color= RGB(赤強度の数、緑強度の数、青強度の数)
となります。
また文字色をRGBで指定する場合は
RnageオブジェクトFont.Color= RGB(赤強度の数、緑強度の数、青強度の数)
となります。

主な色の Index番号と RGB は次の通りです。

色を管理するプロパティには以下の4種類があります。
プロパティ | 用 途 |
Color | RGB形式でカラーを設定 |
ColorIndex | パレット形式でカラーを設定 |
ThemeColor | テーマカラー形式でカラー設定(色) |
TintAndShade | テーマカラー形式でカラー設定(明度) |
セルの網掛け
セルの網掛けは
Range.オブジェクト.Interior.Patten = パターンの種類
Rnage.オブジェクト.Interior.PatternColorIndex = 色番号
又は
Range.オブジェクト.Interior.PatternColor = RGB( RGB値 )
として設定します。
Sub パターン()
‘①
With Range(“C4:C8”).Interior
.Pattern = xlLightUp
.PatternColorIndex = 4
End With
‘②
With Range(“D2:D5”).Interior
.Pattern = xlDown
.PatternColor = RGB(0, 0, 255)
End With
‘③
With Range(“E3:E7”).Interior
.Pattern = Range(“B2”).Interior.Pattern
.PatternColorIndex = Range(“B2”).Interior.PatternColorIndex
End With

パターンと設定できる定数は次の通りです。

