【Excel VBA】ColorIndexプロパティの設定値 インデックス番号と色の対応

[Excel VBA]

InteriorオブジェクトやFontオブジェクトは、色を設定するための「ColorIndex」というプロパティを持ちます。このプロパティは、もともとOffice 2003以前の“旧カラーパレット”の色を指定するためのものですが、Office 2007以降のExcelでも使用可能です。古くからのExcelユーザーの中には、「旧カラーパレットの色が好き」という方もいらっしゃるのではないでしょうか。本記事では、旧カラーパレットの色の指定方法を紹介します。

スポンサーリンク

インデックス番号と色の対応(カラーパレット順)

旧カラーパレットには、下図のように56種類の色が7行×8列の中に配列されています。Excel 2003では、主に上5行がセルや文字に付ける色、下2行がグラフに付ける色として使用されていました。上5行と下2行の中には重複する色もあります。なお、カラーパレットの仕組みが一新されたExcel 2007以降では、上5行の色と下2行の色を区別する意味はありません。全56色を同等に扱えます。

カラーパレットの各色には、下図のように1 ~ 56のインデックス番号が割り振られています。

1
53
52
オリーブ
51
濃い緑
49
濃い青緑
11
濃い青
55
インディゴ
56
80%灰色
9
濃い赤
46
オレンジ
12
濃い黄
10
14
青緑
5
47
ブルーグレー
16
50%灰色
3
45
薄いオレンジ
43
ライム
50
シークグリーン
42
アクア
41
薄い青
13
48
40%灰色
7
ピンク
44
ゴールド
6
4
明るい緑
8
水色
33
スカイブルー
54
プラム
15
25%灰色
38
ローズ
40
ベージュ
36
薄い黄
35
薄い緑
34
薄い水色
37
ペールブルー
39
ラベンダー
2
17
グレー
18
プラム
19
アイボリー
20
薄い水色
21
濃い紫
22
コーラル
23 オーシャンブルー 24
アイスブルー
25
濃い青
26
ピンク
27
28
水色
29
30
濃い赤
31
青緑
32

例えば、ColorIndexプロパティに「3」を設定すると、インデックス番号「3」に対応する赤(カラーパレットの3行1列目の色)が設定されます。

Range("A1").Font.ColorIndex = 3
セルA1の文字の色をインデックス番号「3」の色(赤)にする

インデックス番号と色の対応(インデックス番号順)

インデックス番号順に色を並べ替えると、下表のようになります。なお、表中のRGB、10進数、16進数の値は、各色をColorIndexプロパティではなくColorプロパティを使用して設定したい場合に使用する値です。

インデックス番号 RGB 10進数 16進数 説明
1 0, 0, 0 0 &000000
2 255, 255, 255 16777215 &FFFFFF
3 255, 0, 0 255 &FF0000
4 0, 255, 0 65280 &00FF00 明るい緑
5 0, 0, 255 16711680 &0000FF
6 255, 255, 0 65535 &FFFF00
7 255, 0, 255 16711935 &FF00FF ピンク
8 0, 255, 255 16776960 &00FFFF 水色
9 128, 0, 0 128 &800000 濃い赤
10 0, 128, 0 32768 &008000
11 0, 0, 128 8388608 &000080 濃い青
12 128, 128, 0 32896 &808000 濃い黄
13 128, 0, 128 8388736 &800080
14 0, 128, 128 8421376 &008080 青緑
15 192, 192, 192 12632256 &C0C0C0 25%灰色
16 128, 128, 128 8421504 &808080 50%灰色
17 153, 153, 255 16751001 &9999FF グレー
18 153, 51, 102 6697881 &993366 プラム
19 255, 255, 204 13434879 &FFFFCC アイボリー
20 204, 255, 255 16777164 &CCFFFF 薄い水色
21 102, 0, 102 6684774 &660066 濃い紫
22 255, 128, 128 8421631 &FF8080 コーラル
23 0, 102, 204 13395456 &0066CC オーシャンブルー
24 204, 204, 255 16764108 &CCCCFF アイスブルー
25 0, 0, 128 8388608 &000080 濃い青
26 255, 0, 255 16711935 &FF00FF ピンク
27 255, 255, 0 65535 &FFFF00
28 0, 255, 255 16776960 &00FFFF 水色
29 128, 0, 128 8388736 &800080
30 128, 0, 0 128 &800000 濃い赤
31 0, 128, 128 8421376 &008080 青緑
32 0, 0, 255 16711680 &0000FF
33 0, 204, 255 16763904 &00CCFF スカイブルー
34 204, 255, 255 16777164 &CCFFFF 薄い水色
35 204, 255, 204 13434828 &CCFFCC 薄い緑
36 255, 255, 153 10092543 &FFFF99 薄い黄
37 153, 204, 255 16764057 &99CCFF ペールブルー
38 255, 153, 204 13408767 &FF99CC ローズ
39 204, 153, 255 16751052 &CC99FF ラベンダー
40 255, 204, 153 10079487 &FFCC99 ベージュ
41 51, 102, 255 16737843 &3366FF 薄い青
42 51, 204, 204 13421619 &33CCCC アクア
43 153, 204, 0 52377 &99CC00 ライム
44 255, 204, 0 52479 &FFCC00 ゴールド
45 255, 153, 0 39423 &FF9900 薄いオレンジ
46 255, 102, 0 26367 &FF6600 オレンジ
47 102, 102, 153 10053222 &666699 ブルーグレー
48 150, 150, 150 9868950 &969696 40%灰色
49 0, 51, 102 6697728 &003366 濃い青緑
50 51, 153, 102 6723891 &339966 シークグリーン
51 0, 51, 0 13056 &003300 濃い緑
52 51, 51, 0 13107 &333300 オリーブ
53 153, 51, 0 13209 &993300
54 153, 51, 102 6697881 &993366 プラム
55 51, 51, 153 10040115 &333399 インディゴ
56 51, 51, 51 3355443 &333333 80%灰色

メモ

インデックス番号は厳密にはパレットの位置に対応
インデックス番号は、厳密には色ではなくカラーパレットの位置に対応します。例えば、デフォルトではインデックス番号「3」の色は赤ですが、カラーパレットの3行1列目を青に変更した場合、インデックス番号「3」の色も青になります。その状態で「Range("A1").Font.ColorIndex = 3」を実行すると、セルA1の文字は赤ではなく青になります。
ちなみに、Excel 2019でカラーパレットの赤を青に変更するには、[ファイル]タブ→[オプション]をクリックして[Excelのオプション]ダイアログボックスを表示し、[保存]画面の下部にある[色]ボタンをクリックします。すると、下図のような[色]ダイアログボックスが表示されるので、カラーパレット上で赤を選択して[変更]ボタンをクリックし、表示される画面で青を選択します。カラーパレットのカスタマイズは、ファイル単位の設定になります。
スポンサーリンク

関連記事