TintAndShadeプロパティ
セルの背景色の色の明るさの取得と設定を行うにはTintAndShadeプロパティを利用します。
明るさが変わることで印象が変わります。
構文
1 2 3 4 5 |
'// 取得 Range.Interior.TintAndShade '// 設定 Range.Interior.TintAndShade = 設定値 |
Range | セル選択範囲を示すRangeオブジェクトを指定します。 | ||||||||
Interior | セルの内部設定を行うプロパティです。セルの背景の設定では、色や濃淡や塗りつぶし効果(グラデーション)や網掛けを行う際に利用します。 | ||||||||
TintAndShade | -1から1の範囲の単精度浮動小数点のSingle型の値を取得または設定します。
-1より小さい値や1より大きい値を設定すると「実行時エラー ‘5’: プロシージャの呼び出し、または引数が不正です。」とエラーになります。 |
TintAndShadeプロパティ値の見本
TintAndShadeプロパティを0.1刻みで設定した場合の標準色の見本です。0が標準色そのままの色になります。見た目では-1は黒、1は白になります。
サンプルコード
上の見本を作成したときのコードです。
背景色は事前に-1から1までを標準色を設定しておき、その後このコードを実行したのが上の見本になります。
実行前
この通り、標準色はなんとなく重たくべたっとした色です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Sub TintAndShadeTest() Dim iRow Dim iCol Dim ar() '// 0.1刻みの値を配列化 ar = Array(-1, -0.9, -0.8, -0.7, -0.6, -0.5, -0.4, -0.3, -0.2, -0.1, 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1) '// A2セルを基準セルとして選択 Range("A2").Select '// 縦ループ For iRow = 0 To 9 '// 横に-1から1までループ For iCol = 0 To UBound(ar) '// 明るさ設定 ActiveCell.Offset(iRow, iCol).Interior.TintAndShade = ar(iCol) Next Next End Sub |
実行結果
コードの実行結果は上の見本になります。