6.8 テーマカラーでセルの背景色を設定する
Excel 2007以降では、セル、行、列の背景色をテーマカラーという機能で設定できます。テーマカラーとは、背景色・文字色・アクセントなどのやくわりごとに色を定義・管理する方法です。テーマカラーで色を設定すると、色・フォント・効果など、ワークブックのデザイン変更が簡単に行えるようになります。
テーマカラーでセルの背景色(塗りつぶし色)を設定する
 テーマカラーによる色の設定は、色のやくわり(テーマの色)とその明るさの2つの設定を組み合わせて行います。テーマカラーで背景色を付けるときはRangeオブジェクトのInteriorプロパティを使い、ThemeColorプロパティで背景色を、TintAndShadeプロパティで背景色の明るさを、それぞれに設定します。

図 6-8-1Interior.ThemeColorプロパティとInterior.TintAndShadeプロパティの使い方
Rangeオブジェクト.Interior.ThemeColor = テーマ番号
テーマカラーで背景色を設定します。

Rangeオブジェクト.Interior.TintAndShade = 強さ
背景色の明るさを設定します。
テーマを使った色の設定は、Excel 2007以降で使える機能です。

テーマ色のパレットとThemeColor・TintAndShadeの関係テーマ番号
 色のやくわりです。1〜12のテーマ番号、もしくはXlThemeColor列挙の内容で設定します。

強さ(明るさ)
 -1〜1の範囲を 0.1刻みくらいで設定します。
 0が標準、-1が最小、1が最大です。


【記述例】
テーマカラーを使ってA1セルの背景色を強調2に設定します。
Range("A1").Interior.ThemeColor = xlThemeColorAccent2
Range("A1").Interior.TintAndShade = 0.4

表 6-8-1ThemeColorに設定する内容(XlThemeColor列挙)
名前内容(色のやくわり)
xlThemeColorDark11濃色1(背景色1)
xlThemeColorLight12淡色1(テキスト色1)
xlThemeColorDark23濃色2(背景色2)
xlThemeColorLight24淡色2(テキスト色2)
xlThemeColorAccent15強調1(アクセント1)
xlThemeColorAccent26強調2(アクセント2)
xlThemeColorAccent37強調3(アクセント3)
xlThemeColorAccent48強調4(アクセント4)
xlThemeColorAccent59強調5(アクセント5)
xlThemeColorAccent610強調6(アクセント6)
xlThemeColorHyperlink11 ハイパーリンク
xlThemeColorFollowedHyperlink12表示済みのハイパーリンク
テーマカラーでセルの背景色を設定するプログラム
 次のリストは、テーマカラーを使ってセルの背景色を設定するプログラムの作成例です。テーマカラーを使う場合は、テーマ番号と色の強さ(明るさ)の2種類を設定します。サンプルプログラムでは、7行目でテーマ番号、8行目で強さを設定しました。
 なお、6行目で使っているPatternプロパティは、網かけの設定です。このサンプルでは、網かけを含めた背景色の設定をクリアする処理を行いました。網かけについては、「セルに網かけを付ける」を参照してください。

リスト 6-8-1テーマカラーでセルの背景色を設定するプログラム
1
2
3
4
5
6
7
8
9
10
11

Sheet1
Option Explicit

Sub InteriorThemeSample()

    With Range("A1:C5").Interior
        .Pattern = xlPatternNone
        .ThemeColor = xlThemeColorAccent3
        .TintAndShade = 0.4
    End With

End Sub

◆実行結果
 サンプルプログラム「InteriorThemeSample」を実行すると、A1〜C5セルの背景色をオリーブ(薄い緑色)に設定します。なお、このサンプルは、Excel 2003以前では実行できません。

図 6-8-2サンプルプログラムの実行例
テーマカラーを使ってセルの背景色を設定した例。Excel 2007以降で使える機能です。

Copyright(C) 1999-2014 結城圭介(Ver.3.51) All rights reserved