wrote :: 2005.12.15

トップページ > Excel > VBA > 講座:セルの操作 > 背景色の設定

背景色の設定

背景色の設定も、基本的には文字色の設定と同じです。操作をマクロ記録して、どんなオブジェクトやプロパティを使うのか調べてみましょう。いくつの数値を指定すると何色になるかは「背景色の数値」を参照してください。次のコードは、セルA1の背景色を薄い黄色に設定した操作を記録したものです。背景色の設定には[書式]ツールバーの[塗りつぶしの色]ボタンを使いました。

Sub Macro4()
    With Selection.Interior
        .ColorIndex = 6
        .Pattern = xlSolid
    End With
End Sub

Selectionは「選択されているモノ」つまり、ここではセルA1です。Withステートメントも使われていますので分かりづらいですが、整理すると設定しているのは次の2行です。

・Range("A1").Interior.ColorIndex = 6
・Range("A1").Interior.Pattern = xlSolid

文字色を設定するときのコードは、

・Range("A1").Font.ColorIndex = 6

でした。
これは「セルA1に含まれるFontオブジェクトのColorIndexプロパティに 3 を設定せよ」という命令です。同じように解読すると、先の2行は

セルA1に含まれるInteriorオブジェクトのColorIndexプロパティに 6 を設定せよ
セルA1に含まれるInteriorオブジェクトのPatternプロパティにxlSolidを設定せよ

というコードだとわかります。

文字色はFontオブジェクトでしたが、どうやら背景色はInteriorオブジェクトのようです。そして、おそらく色を指定しているのは同じColorIndexプロパティではないかと予想できます。では、Patternプロパティとは何でしょう?
背景色の設定を、ツールバーのボタンからしか行ったことのない人は、きっと見当がつかないでしょうね。セルの背景色は、[セルの書式設定]ダイアログボックスの[パターン]タブからも設定できるのです。ここを見ると、色の他に斜線やドットなどのパターンも指定できるのがわかります。Patternプロパティは、このパターンを決めるプロパティなのです。

Patternプロパティに設定しているxlSolidは、塗りつぶす種類を表す定数です。定数については、また別の機会に詳しく解説します。とにかく、xlSolidを設定すると覚えといてください。定数は、"xlSolid"と""(ダブルコーテーション)で囲ってはいけません。


[文字色の設定]戻る← | →進む[配置の設定]