構文
構文は以下の通りです。
Worksheets("シート名").Cells(行番号, 列番号).Interior.Pattern = 値
解説
Interior.Patternプロパティは、セルの背景色やパターンを指定する事ができます。
●Worksheets("シート名"):背景色を変更したいセルが存在するシートを指定します。
●Cells(行番号, 列番号):背景色を変更したいセルの行番号と列番号を指定します。
●Interior.Pattern:セルの背景色やパターンを指定するためのプロパティです。
●値:セルの背景色やパターンを表すスタイルを指定します。具体的なスタイルを以下に紹介します。
スタイル | 種類 |
xlNone | 塗りつぶしなし |
xlSolid | 純色 (1,1) |
xlGray75 | 75% 灰色 (1,2) |
xlGray50 | 50% 灰色 (1,3) |
xlGray25 | 25% 灰色 (1,4) |
xlGray16 | 16% 灰色 (1,5) |
xlGray8 | 8% 灰色 (1,6) |
xlHorizontal | 濃い横線 (2,1) |
xlVertical | 濃い縦線 (2,2) |
xlDown | 左上から右下までの濃い対角線 (2,3) |
xlUp | 左下から右上までの濃い対角線 (2,4) |
xlChecker | チェッカーボード (2,5) |
xlSemiGray75 | 75% 濃いモアレ (2,6) |
xlLightHorizontal | 明るい横線 (3,1) |
xlLightVertical | 明るい縦線 (3,2) |
xlLightDown | 左上から右下までの明るい対角線 (3,3) |
xlLightUp | 左下から右上までの明るい対角線 (3,4) |
xlGrid | グリッド (3,5) |
xlCrissCross | 十字線 (3,6) |
使い方
具体的な使い方を紹介します。
1.背景色を赤に設定したい場合
Worksheets("Sheet1").Cells(1, 1).Interior.Pattern = xlSolid
Worksheets("Sheet1").Cells(1, 1).Interior.Color = RGB(255, 0, 0)
Worksheets("Sheet1").Cells(1, 1).Interior.Color = RGB(255, 0, 0)
ここでは、xlSolid を使用してセルの背景色を単色に設定し、Interior.Color プロパティを使用して赤色(RGB値で255, 0, 0)に設定しています。
2.セルの背景にチェッカーパターンを適用したい場合
Worksheets("Sheet1").Cells(1, 1).Interior.Pattern = xlChecker
' チェッカーパターンの背景色を白に設定
Worksheets("Sheet1").Cells(1, 1).Interior.Color = RGB(255, 255, 255)
' チェッカーパターンのパターン色を黒に設定
Worksheets("Sheet1").Cells(1, 1).Interior.PatternColor = RGB(0, 0, 0)
' チェッカーパターンの背景色を白に設定
Worksheets("Sheet1").Cells(1, 1).Interior.Color = RGB(255, 255, 255)
' チェッカーパターンのパターン色を黒に設定
Worksheets("Sheet1").Cells(1, 1).Interior.PatternColor = RGB(0, 0, 0)
ここでは、xlChecker を使用してセルの背景にチェッカーパターンを設定し、Interior.Color プロパティで背景色(白)を、Interior.PatternColor プロパティでパターン色(黒)を設定しています。
プログラミング例
以下は具体的なプログラミング例です。
Sub ColorCellsBasedOnValue()
Dim cell As Range
For Each cell In Worksheets("Sheet1").Range("A1:A10")
If cell.Value > 50 Then
cell.Interior.Pattern = xlSolid
cell.Interior.Color = RGB(255, 0, 0) ' 背景色を赤に設定
Else
cell.Interior.Pattern = xlNone ' 背景色をなしに設定
End If
Next cell
End Sub
Dim cell As Range
For Each cell In Worksheets("Sheet1").Range("A1:A10")
If cell.Value > 50 Then
cell.Interior.Pattern = xlSolid
cell.Interior.Color = RGB(255, 0, 0) ' 背景色を赤に設定
Else
cell.Interior.Pattern = xlNone ' 背景色をなしに設定
End If
Next cell
End Sub
この例では、シート「Sheet1」の範囲「A1:A10」のセルの値が50を超える場合は赤色の背景色を設定し、それ以外の場合は背景色をなしに設定しています。
まとめ
Interior.Patternプロパティを使えば、セルの背景色やパターンをプログラムで変更することができます。是非活用してください。