VBAでは、カラーを指定する時に使える組み込み定数があります。
組み込み定数を使えば、カラーコード(RGB値や16進数)がわからなくても、簡単にセルの文字色や背景色を設定・取得できます。
プログラムを見た時にも、定数名を使った方が具体的な色が直感的にわかりやすいので、定数を使うのがオススメです。
その組み込み定数には、昔からあるColorConstants定数と、最近から実装されたXlRgbColor定数の2種類があります。
ColorConstants定数一覧
ColorConstants定数には、次の8色があります。
カラー | 色見本 | 定数 | RGB(赤,緑,青) | 16進数 |
---|---|---|---|---|
黒 | vbBlack | 0, 0, 0 | &H000000 | |
青 | vbBlue | 0, 0, 255 | &Hff0000 | |
シアン | vbCyan | 0, 255, 255 | &Hffff00 | |
緑 | vbGreen | 0, 255, 0 | &H00ff00 | |
マゼンタ | vbMagenta | 255, 0, 255 | &Hff00ff | |
赤 | vbRed | 255, 0, 0 | &H0000ff | |
白 | vbWhite | 255, 255, 255 | &Hffffff | |
黄 | vbYellow | 255, 255, 0 | &H00ffff |
入力する時は、最初にColorConstants.と入力すると、下のようにカラー定数のみに候補がしぼられ、入力がラクにできます。
※vbといきなり打つと、カラー以外の定数も一覧に表示されるので、選びにくいです。
POINT
ColorConstants定数では8色しか定義がありません。
他の色を指定したい時は、カラーコード(RGB値や16進数)で指定するか、次に紹介するXlRgbColor定数を使います。
XlRgbColor定数一覧
XlRgbColor定数としては142色ありますが、同じ色を表す定数(rgbDimGrayとrgbDimGreyなど)が5つあるので、実際のカラーは137色になります。
どの定数も先頭がrgbで始まっているので、コーディングする時はrgbと入力したら表示される候補一覧から選べるので楽にコーディングできます。
カラー | 色見本 | 定数 | RGB(赤,緑,青) | 16進数 |
---|---|---|---|---|
黒 | rgbBlack | 0, 0, 0 | &H000000 | |
ディムグレー | rgbDimGray | 105, 105, 105 | &H696969 | |
〃 | rgbDimGrey | 105, 105, 105 | &H696969 | |
灰色 | rgbGray | 128, 128, 128 | &H808080 | |
〃 | rgbGrey | 128, 128, 128 | &H808080 | |
濃い灰色 | rgbDarkGray | 169, 169, 169 | &Ha9a9a9 | |
〃 | rgbDarkGrey | 169, 169, 169 | &Ha9a9a9 | |
銀色 | rgbSilver | 192, 192, 192 | &Hc0c0c0 | |
薄い灰色 | rgbLightGray | 211, 211, 211 | &Hd3d3d3 | |
〃 | rgbLightGrey | 211, 211, 211 | &Hd3d3d3 | |
ゲーンズボロ | rgbGainsboro | 220, 220, 220 | &Hdcdcdc | |
ホワイトスモーク | rgbWhiteSmoke | 245, 245, 245 | &Hf5f5f5 | |
白 | rgbWhite | 255, 255, 255 | &Hffffff | |
スノー | rgbSnow | 255, 250, 250 | &Hfafaff | |
ローズブラウン | rgbRosyBrown | 188, 143, 143 | &H8f8fbc | |
薄いさんご | rgbLightCoral | 240, 128, 128 | &H8080f0 | |
インディアンレッド | rgbIndianRed | 205, 92, 92 | &H5c5ccd | |
茶 | rgbBrown | 165, 42, 42 | &H2a2aa5 | |
れんが色 | rgbFireBrick | 178, 34, 34 | &H2222b2 | |
栗色 | rgbMaroon | 128, 0, 0 | &H000080 | |
濃い赤 | rgbDarkRed | 139, 0, 0 | &H00008b | |
赤 | rgbRed | 255, 0, 0 | &H0000ff | |
ミスティローズ | rgbMistyRose | 255, 228, 225 | &He1e4ff | |
サーモンピンク | rgbSalmon | 250, 128, 114 | &H7280fa | |
トマト | rgbTomato | 255, 99, 71 | &H4763ff | |
濃いサーモンピンク | rgbDarkSalmon | 233, 150, 122 | &H7a96e9 | |
さんご | rgbCoral | 255, 127, 80 | &H507fff | |
オレンジレッド | rgbOrangeRed | 255, 69, 0 | &H0045ff | |
薄いサーモンピンク | rgbLightSalmon | 255, 160, 122 | &H7aa0ff | |
シェンナ | rgbSienna | 160, 82, 45 | &H2d52a0 | |
シーシェル | rgbSeashell | 255, 245, 238 | &Heef5ff | |
ピーチパフ | rgbPeachPuff | 255, 218, 185 | &Hb9daff | |
サンディブラウン | rgbSandyBrown | 244, 164, 96 | &H60a4f4 | |
リネン | rgbLinen | 250, 240, 230 | &He6f0fa | |
ペルー | rgbPeru | 205, 133, 63 | &H3f85cd | |
ビスク | rgbBisque | 255, 228, 196 | &Hc4e4ff | |
濃いオレンジ | rgbDarkOrange | 255, 140, 0 | &H008cff | |
アンティークホワイト | rgbAntiqueWhite | 250, 235, 215 | &Hd7ebfa | |
タン | rgbTan | 210, 180, 140 | &H8cb4d2 | |
バーリーウッド | rgbBurlyWood | 222, 184, 135 | &H87b8de | |
ブランシュアーモンド | rgbBlanchedAlmond | 255, 235, 205 | &Hcdebff | |
ナバホホワイト | rgbNavajoWhite | 255, 222, 173 | &Haddeff | |
パパイヤホイップ | rgbPapayaWhip | 255, 239, 213 | &Hd5efff | |
モカシン | rgbMoccasin | 255, 228, 181 | &Hb5e4ff | |
オレンジ | rgbOrange | 255, 165, 0 | &H00a5ff | |
フローラルホワイト | rgbFloralWhite | 255, 250, 240 | &Hf0faff | |
オールドレース | rgbOldLace | 253, 245, 230 | &He6f5fd | |
小麦 | rgbWheat | 245, 222, 179 | &Hb3def5 | |
ゴールデンロッド | rgbGoldenrod | 218, 165, 32 | &H20a5da | |
濃いゴールデンロッド | rgbDarkGoldenrod | 184, 134, 11 | &H0b86b8 | |
コーンシルク | rgbCornsilk | 255, 248, 220 | &Hdcf8ff | |
ゴールド | rgbGold | 255, 215, 0 | &H00d7ff | |
レモンシフォン | rgbLemonChiffon | 255, 250, 205 | &Hcdfaff | |
カーキ | rgbKhaki | 240, 230, 140 | &H8ce6f0 | |
濃いカーキ | rgbDarkKhaki | 189, 183, 107 | &H6bb7bd | |
ペールゴールデンロッド | rgbPaleGoldenrod | 238, 232, 107 | &H6be8ee | |
アイボリー | rgbIvory | 255, 255, 240 | &Hf0ffff | |
ベージュ | rgbBeige | 245, 245, 220 | &Hdcf5f5 | |
明るい黄 | rgbLightYellow | 255, 255, 224 | &He0ffff | |
薄いゴールデンロッドイエロー | rgbLightGoldenrodYellow | 250, 250, 210 | &Hd2fafa | |
オリーブ | rgbOlive | 128, 128, 0 | &H008080 | |
黄 | rgbYellow | 255, 255, 0 | &H00ffff | |
オリーブドラブ | rgbOliveDrab | 107, 142, 35 | &H238e6b | |
イエローグリーン | rgbYellowGreen | 154, 205, 50 | &H32cd9a | |
濃いオリーブグリーン | rgbDarkOliveGreen | 85, 107, 47 | &H2f6b55 | |
グリーンイエロー | rgbGreenYellow | 173, 255, 47 | &H2fffad | |
若草色 | rgbLawnGreen | 124, 252, 0 | &H00fc7c | |
シャルトルーズ | rgbChartreuse | 127, 255, 0 | &H00ff7f | |
ハニーデュー | rgbHoneydew | 240, 255, 240 | &Hf0fff0 | |
濃いシーグリーン | rgbDarkSeaGreen | 143, 188, 143 | &H8fbc8f | |
明るい緑 | rgbLightGreen | 144, 238, 144 | &H90ee90 | |
ペールグリーン | rgbPaleGreen | 152, 251, 152 | &H98fb98 | |
フォレストグリーン | rgbForestGreen | 34, 139, 34 | &H228b22 | |
ライムグリーン | rgbLimeGreen | 50, 205, 50 | &H32cd32 | |
濃い緑 | rgbDarkGreen | 0, 100, 0 | &H006400 | |
緑 | rgbGreen | 0, 128, 0 | &H008000 | |
黄緑 | rgbLime | 0, 255, 0 | &H00ff00 | |
淡いアクアマリン | rgbMediumAquamarine | 102, 255, 170 | &Haaff66 | |
淡いシーグリーン | rgbMediumSeaGreen | 60, 179, 113 | &H71b33c | |
シーグリーン | rgbSeaGreen | 46, 139, 87 | &H578b2e | |
ミントクリーム | rgbMintCream | 245, 255, 250 | &Hfafff5 | |
スプリンググリーン | rgbSpringGreen | 0, 255, 127 | &H7fff00 | |
淡いスプリンググリーン | rgbMediumSpringGreen | 0, 250, 154 | &H9afa00 | |
アクアマリン | rgbAquamarine | 127, 255, 212 | &Hd4ff7f | |
ターコイズ | rgbTurquoise | 64, 224, 208 | &Hd0e040 | |
薄いシーグリーン | rgbLightSeaGreen | 32, 178, 170 | &Haab220 | |
淡いターコイズ | rgbMediumTurquoise | 72, 209, 204 | &Hccd148 | |
空色 | rgbAzure | 240, 255, 255 | &Hfffff0 | |
ペールターコイズ | rgbPaleTurquoise | 175, 238, 238 | &Heeeeaf | |
濃いスレートグレー | rgbDarkSlateGray | 47, 79, 79 | &H4f4f2f | |
濃いスレートグレー | rgbDarkSlateGrey | 47, 79, 79 | &H4f4f2f | |
青緑 | rgbTeal | 0, 128, 128 | &H808000 | |
濃いシアン | rgbDarkCyan | 0, 139, 139 | &H8b8b00 | |
明るい水色 | rgbLightCyan | 0, 139, 139 | &H8b8b00 | |
濃いターコイズ | rgbDarkTurquoise | 0, 206, 209 | &Hd1ce00 | |
水色 | rgbAqua | 0, 255, 255 | &Hffff00 | |
カデットブルー | rgbCadetBlue | 95, 158, 160 | &Ha09e5f | |
パウダーブルー | rgbPowderBlue | 176, 224, 230 | &He6e0b0 | |
明るい青 | rgbLightBlue | 173, 216, 230 | &He6d8ad | |
深いスカイブルー | rgbDeepSkyBlue | 0, 191, 255 | &Hffbf00 | |
スカイブルー | rgbSkyBlue | 135, 206, 235 | &Hebce87 | |
薄いスカイブルー | rgbLightSkyBlue | 135, 206, 250 | &Hface87 | |
アリスブルー | rgbAliceBlue | 240, 248, 255 | &Hfff8f0 | |
スチールブルー | rgbSteelBlue | 70, 130, 180 | &Hb48246 | |
スレートグレー | rgbSlateGray | 112, 128, 144 | &H908070 | |
薄いスレートグレー | rgbLightSlateGray | 119, 136, 153 | &H998877 | |
ドジャーブルー | rgbDodgerBlue | 30, 144, 255 | &Hff901e | |
薄いスチールブルー | rgbLightSteelBlue | 176, 196, 222 | &Hdec4b0 | |
コーンフラワーブルー | rgbCornflowerBlue | 100, 149, 237 | &Hed9564 | |
ロイヤルブルー | rgbRoyalBlue | 65, 105, 225 | &He16941 | |
ゴーストホワイト | rgbGhostWhite | 248, 248, 255 | &Hfff8f8 | |
ラベンダー | rgbLavender | 230, 230, 250 | &Hfae6e6 | |
ミッドナイトブルー | rgbMidnightBlue | 25, 25, 112 | &H701919 | |
ネイビー | rgbNavy | 0, 0, 128 | &H800000 | |
〃(ネイビーブルー) | rgbNavyBlue | 0, 0, 128 | &H800000 | |
濃い青 | rgbDarkBlue | 0, 0, 139 | &H8b0000 | |
淡い青 | rgbMediumBlue | 0, 0, 205 | &Hcd0000 | |
青 | rgbBlue | 0, 0, 255 | &Hff0000 | |
濃いスレートブルー | rgbDarkSlateBlue | 72, 61, 139 | &H8b3d48 | |
スレートブルー | rgbSlateBlue | 106, 90, 205 | &Hcd5a6a | |
淡いスレートブルー | rgbMediumSlateBlue | 123, 104, 238 | &Hee687b | |
淡い紫 | rgbMediumPurple | 147, 112, 219 | &Hdb7093 | |
青紫 | rgbBlueViolet | 138, 43, 226 | &He22b8a | |
インディゴ | rgbIndigo | 75, 0, 130 | &H82004b | |
濃いオーキッド | rgbDarkOrchid | 153, 50, 204 | &Hcc3299 | |
濃い紫 | rgbDarkViolet | 148, 0, 211 | &Hd30094 | |
淡いオーキッド | rgbMediumOrchid | 186, 85, 211 | &Hd355ba | |
あざみ色 | rgbThistle | 216, 191, 216 | &Hd8bfd8 | |
プラム | rgbPlum | 221, 160, 221 | &Hdda0dd | |
紫色 | rgbViolet | 238, 130, 238 | &Hee82ee | |
紫 | rgbPurple | 128, 0, 128 | &H800080 | |
濃いマゼンタ | rgbDarkMagenta | 139, 0, 139 | &H8b008b | |
明るい紫 | rgbFuchsia | 255, 0, 255 | &Hff00ff | |
オーキッド | rgbOrchid | 218, 112, 214 | &Hd670da | |
淡いバイオレットレッド | rgbMediumVioletRed | 199, 21, 133 | &H8515c7 | |
深いピンク | rgbDeepPink | 255, 20, 147 | &H9314ff | |
ホットピンク | rgbHotPink | 255, 105, 180 | &Hb469ff | |
ラベンダーブラッシュ | rgbLavenderBlush | 255, 240, 245 | &Hf5f0ff | |
ペールバイオレットレッド | rgbPaleVioletRed | 219, 112, 147 | &H9370db | |
深紅 | rgbCrimson | 220, 20, 60 | &H3c14dc | |
ピンク | rgbPink | 255, 192, 203 | &Hcbc0ff | |
薄いピンク | rgbLightPink | 255, 182, 193 | &Hc1b6ff |
まとめ
プログラムを製造している時は、RGBで指定してもどんな色か理解できています。
でも、しばらく経ってから改造やバグ修正でプログラムを見ると、RGB値だとどんな色かわからないことがあります。手間に感じるかもしれませんが、できるだけ組み込み定数を使って、見やすいプログラムにしましょう。