構文
構文は以下の通りです。
Range("セル範囲").Interior.ColorIndex = 値
解説
Range("セル範囲")は、操作したいセル範囲を指定する部分です。例えば、単一のセルを操作する場合は"A1"のようにセルのアドレスを指定します。また、複数のセルを一括して操作したい場合は、"A1:C10"のように範囲を指定することもできます。Interior.ColorIndexは、セルの背景色を設定するプロパティです。値には、0から56までの数値を指定します。各数値に対応する色はExcelのカラーパレットによって割り当てられています。以下に対応する値を紹介します。
値 | 内容 |
1 | 黒色 |
2 | 白色 |
3 | 赤色 |
4 | 緑色 |
5 | 青色 |
6 | 黄色 |
7 | マゼンタ(紫色) |
8 | シアン(青緑色) |
9 | 濃い赤 |
10 | 濃い緑 |
11 | 濃い青 |
12 | 濃い黄色 |
13 | 濃いマゼンタ |
14 | 濃いシアン |
15 | オレンジ |
16 | 濃い青緑色 |
17 | ダークブルー |
18 | ピンク |
19 | グレー(25%) |
20 | グレー(50%) |
21 | グレー(75%) |
22 | ライトターコイズ |
23 | 浅い青 |
24 | 浅い黄色 |
25 | 緑(25%) |
26 | 濃いオレンジ |
27 | ダークモーブ |
28 | オリーブグリーン |
29 | ブラウン |
30 | プラム |
31 | インディゴ |
32 | グレー(80%) |
33 | パウダーブルー |
34 | グレー(5%) |
35 | ライトオレンジ |
36 | ライム |
37 | レッド |
38 | ライトブルー |
39 | ライトピンク |
40 | ゴールデンロッド |
41 | ライトヴィオレット |
42 | ティール |
43 | ブルー |
44 | スカイブルー |
45 | ライトターコイズ |
46 | パープル |
47 | グレー(15%) |
48 | ダークティール |
49 | グレー(22%) |
50 | オリーブ |
51 | ブラウン |
52 | パステルブルー |
53 | パステルピンク |
54 | パステルイエロー |
55 | ライトグリーン |
56 | ライトティール |
使い方
具体的な使い方を紹介します。
1.カラーインデックスの指定方法
例えば、セルA1の背景色を黄色に設定したい場合は次のようにします。
Range("A1").Interior.ColorIndex = 6
2.色の削除
背景色を削除してデフォルトの白色に戻したい場合は、カラーインデックスに0を指定します。
Range("A1").Interior.ColorIndex = 0
プログラミング例
以下に実際のプログラミング例を紹介します。
Sub 背景色を変更する() Dim score As Integer
score = Range("A1").Value
If score >= 80 Then
Range("A1").Interior.ColorIndex = 4 ' 緑色
ElseIf score >= 60 Then
Range("A1").Interior.ColorIndex = 6 ' 黄色
Else
Range("A1").Interior.ColorIndex = 3 ' 赤色
End If End Sub
score = Range("A1").Value
If score >= 80 Then
Range("A1").Interior.ColorIndex = 4 ' 緑色
ElseIf score >= 60 Then
Range("A1").Interior.ColorIndex = 6 ' 黄色
Else
Range("A1").Interior.ColorIndex = 3 ' 赤色
End If End Sub
この例では、セルA1に入力された値に応じて、80以上なら緑色、60以上なら黄色、それ以下なら赤色となります。
まとめ
Interior.ColorIndexプロパティは、セルの背景色をプログラム的に変更することができます。カラーインデックスを利用して、56色の中から目的の色を指定できることを覚えておいてください。