PR

【Excel VBA】塗りつぶしのテーマの色・標準の色のRGBコード(Interior.Colorメソッド)

その他

Excelのセルの塗りつぶしに表示されているテーマの色・標準の色をVBAから指定するときに使用するRGBコードを紹介します。

スポンサーリンク

テーマの色

テーマの色とは、塗りつぶしメニューに表示されているこちらの色のパターンのことを指しています。

ExcelVBA-エクセルのテーマの色

Interior.ColorメソッドでRGBコードを指定して塗りつぶした結果です。
グレー系は多いので端折ってよく使う色のパターンのみにしています。

ExcelVBA-エクセルのテーマの色をマクロで塗りつぶした結果

▽使用したVBAコードはこちら

Sub Test_RGB1()

'白系~グレー系
Range("A2").Interior.Color = RGB(255, 255, 255)
Range("A3").Interior.Color = RGB(242, 242, 242)
Range("A4").Interior.Color = RGB(217, 217, 217)
Range("A5").Interior.Color = RGB(191, 191, 191)
Range("A6").Interior.Color = RGB(174, 174, 174)
Range("A7").Interior.Color = RGB(166, 166, 166)

'グレー~黒系
Range("B2").Interior.Color = RGB(128, 128, 128)
Range("B3").Interior.Color = RGB(89, 89, 89)
Range("B4").Interior.Color = RGB(64, 64, 64)
Range("B5").Interior.Color = RGB(38, 38, 38)
Range("B6").Interior.Color = RGB(13, 13, 13)
Range("B7").Interior.Color = RGB(0, 0, 0)

'水色~青系
Range("C2").Interior.Color = RGB(221, 235, 247)
Range("C3").Interior.Color = RGB(189, 215, 238)
Range("C4").Interior.Color = RGB(155, 194, 230)
Range("C5").Interior.Color = RGB(91, 155, 213)
Range("C6").Interior.Color = RGB(47, 117, 181)
Range("C7").Interior.Color = RGB(31, 78, 120)

'青~紺系
Range("D2").Interior.Color = RGB(221, 229, 255)
Range("D3").Interior.Color = RGB(180, 198, 231)
Range("D4").Interior.Color = RGB(142, 169, 219)
Range("D5").Interior.Color = RGB(68, 114, 196)
Range("D6").Interior.Color = RGB(48, 84, 150)
Range("D7").Interior.Color = RGB(32, 55, 100)

'黄色系
Range("E2").Interior.Color = RGB(255, 242, 204)
Range("E3").Interior.Color = RGB(255, 230, 153)
Range("E4").Interior.Color = RGB(255, 217, 102)
Range("E5").Interior.Color = RGB(255, 192, 0)
Range("E6").Interior.Color = RGB(191, 143, 0)
Range("E7").Interior.Color = RGB(128, 96, 0)

'オレンジ系
Range("F2").Interior.Color = RGB(252, 228, 214)
Range("F3").Interior.Color = RGB(248, 203, 173)
Range("F4").Interior.Color = RGB(244, 176, 132)
Range("F5").Interior.Color = RGB(237, 125, 49)
Range("F6").Interior.Color = RGB(198, 89, 17)
Range("F7").Interior.Color = RGB(131, 60, 12)

'緑系
Range("G2").Interior.Color = RGB(226, 239, 218)
Range("G3").Interior.Color = RGB(198, 224, 180)
Range("G4").Interior.Color = RGB(169, 208, 142)
Range("G5").Interior.Color = RGB(112, 173, 71)
Range("G6").Interior.Color = RGB(84, 130, 53)
Range("G7").Interior.Color = RGB(55, 86, 35)

End Sub
スポンサーリンク

標準の色

標準の色をVBAから指定して塗りつぶした結果。

ExcelVBA-エクセルの標準の色

▽使用したVBAコードはこちら

Sub Test_RGB2()

'標準の色
Range("B1").Interior.Color = RGB(192, 0, 0)    '濃い赤
Range("B2").Interior.Color = RGB(255, 0, 0)    '赤
Range("B3").Interior.Color = RGB(255, 192, 0)  'オレンジ
Range("B4").Interior.Color = RGB(255, 255, 0)  '黄
Range("B5").Interior.Color = RGB(146, 208, 80) '薄い緑
Range("B6").Interior.Color = RGB(0, 176, 80)   '緑
Range("B7").Interior.Color = RGB(0, 176, 240)  '薄い青
Range("B8").Interior.Color = RGB(0, 112, 192)  '青
Range("B9").Interior.Color = RGB(0, 32, 96)   '濃い青
Range("B10").Interior.Color = RGB(112, 48, 160) '紫

End Sub
スポンサーリンク

塗りつぶしなしの状態にする(塗りつぶしのクリア)

すでに塗りつぶしの色が設定されているセルに対して、塗りつぶしなしの状態にしたい場合は↓のように設定します。

Range(“A1”).Interior.ColorIndex = 0

スポンサーリンク

補足

青系のパターンの一番薄い色のRGBコードをVBAから調べるとRGB(217,255,242)なのですが、このコードを指定してVBAから塗りつぶしをすると違う色になってしまう現象がありました。なぜか明るい水色になってしまいます。。

ExcelVBA-青系パターンの一番薄い色が指定できない

▽出したいのはこの色
 青、アクセント5、白+基本色80%

ExcelVBA-エクセルのテーマの色の青系の一番薄い色

なので上で紹介したテーマの色のD2セルの色は別の似た色でコードを指定して出しています。
Range(“D2”).Interior.Color = RGB(221, 229, 255)

スポンサーリンク

※コードのコピー利用について

・コードのコピーは自由におこなっていただけます。
・気を付けて作成はしていますがコードには誤りがある可能性があります。
・自身の環境で動作確認をしていますが、すべての方の環境で同様に動くことは保証できません。
・データの破損等の責任は負いかねますのでご自身の責任のもとお使いください。

タイトルとURLをコピーしました