Excelで色の指定をする機会は多くあります。今回はの指定の仕方について解説していきます。

色を指定する方法の紹介

ColorIndexを使用する

ColorIndexとはExcelの標準色に対して割り当ている数値の事です。
56色がColorIndexを使用して指定が可能です。
色が割り当てられていると言うより、パレットの場所で色を指定できる仕組みになっています。

このパレット自体は、「Excelのオプション 保存 色」で確認できます。例えば右下の色をフォントの色に設定したければ「Font.ColorIndex=32」で設定が出来ます。

設定の仕方が楽で、かつカラーも沢山選べますね

カラーパレットの色の変更も先ほどのオプションから設定可能ですが、ブック毎の設定となるので色の変更はあまりお勧めしません。

カラー定数を利用する

カラー定数とは、赤、青、黄色など代表的なカラーにイメージし易い名前を付けたもの。
(vbBlue、vbRed等)全8色 とりあえず色分けできればよし!そんな時に利用してください。

下記がカラー定数の設定色です。

色見本定数
vbBlack
vbBlue
vbCyan
vbGreen
vbMagenta
vbRed
vbWhite
vbYellow

RGB関数を利用する

RGB関数を利用してRGBカラーで色を指定する方法。
RGBカラーとは「光の三原色 Red(赤)Green(緑)Blue(青)」を組み合わせた色を数値化して
表現する方法です。各数値は0~255までで指定します。数値が多い程その色の色相が強いです。

RGBカラーについてもっと詳しく見る

RGBカラーとは「光の三原色 Red(赤)Green(緑)Blue(青)光の強度を数値で表したもので、デジタル画像における色の基本的な表現方法です。数値が多い程その色の色味が強いです。

例えば、RGB(255,0,0)ならRedが最大数値、GreenとBlueが0なので真っ赤です。RGBカラーは光を加算していって色をつくります。なので、3色すべて最大値にするとRGB(255,255,255)で眩しい白になり、3色すべて最小値にするとRGB(0,0,0)で光がない真っ黒になります。ExcelでRGB関数を使用するとRGBカラーで指定したカラーを0~16,777,215の数字の羅列に変換します。RGB(255,255,255)が「白」でRGB関数を使うと「16,777,215」に変換されます。一応下記の計算式で算出できます。

REDの数値+(Greenの数値×256)+(Blueの数値×256の2乗)


色が指定できるオブジェクトの種類と指定方法

Excelで色の指定ができるもの沢山あります。下記が該当します。順番に色の指定の仕方を紹介していきます。

  • フォントの色
  • セルの色
  • 罫線の色
  • シートのタブの色
  • 図形の枠線の色・塗りつぶし色

①フォントの色の指定方法

Fontを指定します。

  • 構文①:Range(範囲).Font.ColorIndex =カラーインデックス
  • 構文②:Range(範囲).Font.Color=カラー定数
  • 構文③:Range(範囲).Font.Color=RGB(赤、緑、青)

例文:Range(“Q1”).Font.Color=RGB(255,0,255) ‘セルQ1をピンクにする

②セルの色の指定方法

Interiorを指定します。

  • 構文①:Range(範囲).Interior.ColorIndex =カラーインデックス
  • 構文②:Range(範囲).Interior.Color=カラー定数
  • 構文③:Range(範囲).Interior.Color=RGB(赤、緑、青)

例文:Range(“Q1”).Interior.ColorIndex=36 ‘セルQ1の塗りつぶしをパステル黄色にする

③罫線の色の指定方法

罫線とはセルを囲む線の事を言いますが、設定の種類がたくさんあるから細かく指定してあげるとなると結構大変です。設定項目といえば

  • 罫線を引く場所…囲んじゃうのか、下線だけなのか等
  • 罫線の種類…太いの細いの、破線、実線等
  • 罫線に色

詳しくはVBAの逆引き編に後ほど紹介させていただきたいなぁと思いますので今回は色の設定のみご紹介します。

Bordersを指定します。

  • 構文①:Range(範囲).Borders.ColorIndex =カラーインデックス
  • 構文②:Range(範囲).Borders.Color=カラー定数
  • 構文③:Range(範囲).Borders.Color=RGB(赤、緑、青)

例文:Range(“C5”).Borders.ColorIndex=50 ‘セルQ1の罫線を緑色にする

どこに線を引く、どんな線を引くを省略すると細い実線で罫線を引いてくれます

罫線_例

④シートのタブ色の指定方法

Worksheet.tabを使います。

  • 構文①:Worksheets(シート名).tab.ColorIndex =カラーインデックス
  • 構文②:Worksheets(シート名).tab.Color=カラー定数
  • 構文③:Worksheets(シート名).tab.Color=RGB(赤、緑、青)

例文:Worksheets(“sheet1”).tab.Color=vbCyan

tab色の変更後イメージ

⑤図形の枠線の色・塗りつぶし色

Excelで図形の事をオートシェイプを言いShapeオブジェクトを用いて色の指定を行います。図形の設定種類も罫線と同じく沢山あります。

  • 何の図形を挿入するか
  • どの位置に挿入する
  • サイズはどの位か
  • 塗りつぶし色は
  • 枠線の色は

詳しくはVBAの逆引き編に後ほど紹介させていただきたいなぁと思いますので今回は、塗りつぶし色と枠線の設定のみご紹介します。

図形の塗りつぶし色はFill.ForeColor.RGBを使います。

  • 構文:Shapes(図形名).Fill.ForeColor.RGB =RGB(赤、緑、青)

例文:ActiveSheet.Shapes(1).Fill.ForeColor.RGB = RGB(255, 255, 0)

図形に名前の設定をしていなければ、図形には作成した順番で番号がついています。

ActiveSheet.Shapes(1)で 編集中のシートで一番最初に作成した図形を指定していることになります。

図形の塗りつぶしのイメージ

図形の枠線の色はLine.ForeColor.RGBを使います。

  • 構文:Shapes(図形名).Line.ForeColor.RGB =RGB(赤、緑、青)

例文:ActiveSheet.Shapes(“ハート1”).Line.ForeColor.RGB = RGB(255,0,255)

図形には作成した順番で番号がついていますが、図形の名前の付け方も簡単なのでご紹介します。

図形を選択状態でExcel左上の名前ボックスに変更した名前を入力後Enterで名前の設定が出来ます。

図形に名前を付けた場合は例文の通り「””」ダブルクォーテーションで図形名を囲んで指定してください。

ハート図形の見本
ハート変更後イメージ
さいごに

今回はVBAでの色の指定の方法をまとめました。今回細かく説明できなかった部分をVBA逆引き編に投稿予定ですので気になった方は見て頂けると嬉しいです。

最後まで読んでいただきましてありがとうございました