【Excel VBA】シートの色変更(Colorプロパティ)

りゅう
こんにちは!りゅう(@ryupong_b)です。
今回は、「シート見出しの色を変更する方法」について解説していきます。
はじめに

今回は、シート見出しの色を変更する方法について解説します。
シート見出しとは以下、赤枠箇所のことです。

この記事を読むメリット
  • シート見出しの色変更の方法が分かります。
  • 複数の色のサンプルをご紹介します。

使用例

サンプルコードを交えて解説いたします。
前提として、見出しの色変更には以下2つの手段があります。

変更のパターン
  • ColorIndex指定
  • RGB指定

サンプルコード

サンプルコード
Public Sub changeWorksheetColor()

    ' Sheet1を黄色に変更(ColorIndex指定)
    ThisWorkbook.Worksheets("Sheet1").Tab.ColorIndex = 6

    ' Sheet2灰色に変更(RGB指定)
    ThisWorkbook.Worksheets("Sheet2").Tab.Color = RGB(128, 128, 128)

    ' Sheet3の色を色なしに変更
    ThisWorkbook.Worksheets("Sheet3").Tab.ColorIndex = xlColorIndexNone

End Sub

実行結果

実行前

実行後

めい
手段は違うけど、結果に違いはないの?
りゅう
得られる結果は同じなので、好みで使い分けてもらって大丈夫です。

詳細解説

構文や注意点などについて踏み込んで解説します。

構文

ColorIndex指定

構文

object.Tab.ColorIndex = index

ColorIndexは、ExcelVBAにデフォルトで用意されている配色設定で数値を指定します。代表的な色とそれに紐づくColorIndexの一覧は後述します。

RGB値指定

構文

object.Tab.Color = RGB値

代表的な色一覧

代表的な色と、それに紐づくColorIndex、RGB値を示します。

ColorIndex RGB値
1 RGB(0, 0, 0)
2 RGB(255, 255, 255)
3 RGB(255, 0, 0)
4 RGB(0, 255, 0)
5 RGB(0, 0, 255)
6 RGB(255, 255, 0)
15 RGB(192, 192, 192)
16 RGB(128, 128, 128)
りゅう
上記以外の色の一覧は、以下の記事にまとめています。
よろしければ、ご参照ください。
あわせて読みたい
【Excel VBA】色の一覧表 – (ColorIndex/RGB値/16進数/XlRgbColor定数) こんにちは!りゅう(@ryupong_b)です。本記事では Excel VBAにおける色の設定時に便利な、色の一覧を掲載します。 【色の一覧】 ColorIndex色RGB値16進数1 RGB(0, ...

色なしの設定方法

サンプルコードにて掲載していますが、以下を実行することで色なしの設定が可能です。

構文

object.Tab.ColorIndex = xlColorIndexNone

サンプルコード(応用編)

本項では、汎用的なサンプルコードを掲載していきます。

すべてのシートの色をクリアする

サンプルコード
Public Sub clearWorkcheetColor()

    Dim ws As Worksheet ' Worksheetオブジェクト

    ' すべてのシート分ループ
    For Each ws In ThisWorkbook.Worksheets

        ' シートの見出しを色なしに変更
        ws.Tab.ColorIndex = xlColorIndexNone
    Next ws

End Sub

さいごに

いかがでしたでしょうか。
個人的には、ColorIndex指定の方がスッキリしていいなと思いますが、お好みで使い分けて頂ければと思います。

この記事が、読者さまのお力になれれば嬉しいです!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

大手外資系コンサルティングファーム勤務。ExcelVBA歴は8年。金融関係のプロジェクトにて約100万レコードを処理するマクロの開発実績あり。ExcelVBAの基礎・応用情報を発信中。

コメント

コメントする

CAPTCHA