- Home ›
- Excel VBA入門 ›
- セルの背景色の設定 ›
- HERE
網かけの設定
広告
セルの背景に網かけを行うことができます。網かけは網のパターンと網の色を指定して行います。背景色の上に網の色でパターンを描画することになります。
まず網のパターンは、Interiorオブジェクトの「Pattern」プロパティで指定します。指定できる値は既に決められており、次の定数のいずれかを指定します。
定数 | 網かけパターン |
---|---|
xlSolid | 塗りつぶし(網かけ無し) |
xlGray75 | 75%灰色 |
xlGray50 | 50%灰色 |
xlGray25 | 25%灰色 |
xlGray16 | 12.5%灰色 |
xlGray8 | 6.25%灰色 |
xlHorizontal | 横縞 |
xlVertical | 縦縞 |
xlDown | 右下がり縞 |
xlUp | 右上がり縞 |
xlChecker | 斜線格子 |
xlSemiGray75 | 極太斜線格子 |
xlLightHorizontal | 横縞(広) |
xlLightVertical | 縦縞(広) |
xlLightDown | 右下がり縞(広) |
xlLightUp | 右上がり縞(広) |
xlGrid | 格子 |
xlCrissCross | 斜線格子(薄) |
実際の記述は次のようになります。
Dim interior1 As Interior Set interior1 = Range("A1").Interior interior1.Pattern = xlVertical
まとめて次のように記述しても構いません。
Range("A1").Interior.Pattern = xlVertical
次に網の色の指定です。Interiorオブジェクトの「PatternColorIndex」プロパティで指定します。「PatternColorIndex」プロパティは文字の色や罫線の色で使ったものと同じです。全部で57種類の色が用意されており、0から56のインデックス番号で指定します。(詳しくは『文字色の設定』を参照して下さい)。
Dim interior1 As Interior Set interior1 = Range("A1").Interior interior1.PatternColorIndex = 23
まとめて次のように記述しても構いません。
Range("A1").Interior.PatternColorIndex = 23
サンプルプログラム
では簡単なサンプルで試してみましょう。
Sub テスト() Range("A1:C6").Interior.ColorIndex = 22 Range("A1").Interior.Pattern = xlGray75 Range("B1").Interior.Pattern = xlGray50 Range("C1").Interior.Pattern = xlGray25 Range("A2").Interior.Pattern = xlGray16 Range("B2").Interior.Pattern = xlGray8 Range("C2").Interior.Pattern = xlHorizontal Range("A3").Interior.Pattern = xlVertical Range("B3").Interior.Pattern = xlDown Range("C3").Interior.Pattern = xlUp Range("A4").Interior.Pattern = xlChecker Range("B4").Interior.Pattern = xlSemiGray75 Range("C4").Interior.Pattern = xlLightHorizontal Range("A5").Interior.Pattern = xlLightVertical Range("B5").Interior.Pattern = xlLightDown Range("C5").Interior.Pattern = xlGrid Range("A6").Interior.Pattern = xlCrissCross Range("B6").Interior.Pattern = xlSolid Range("A8:C9").Interior.ColorIndex = 6 Range("A8:C9").Interior.Pattern = xlGrid Range("A8").Interior.PatternColorIndex = 5 Range("B8").Interior.PatternColorIndex = 10 Range("C8").Interior.PatternColorIndex = 20 Range("A9").Interior.PatternColorIndex = 30 Range("B9").Interior.PatternColorIndex = 40 Range("C9").Interior.PatternColorIndex = 50 End Sub
上記マクロを実行すると次のようになります。
( Written by Tatsuo Ikura )