カラースケール

条件付き書式の第四弾!カラースケールについて調べていきます

サンプルソースの詳細な説明は、第一弾の以下の「指定の値より大きい」を参照してください

■種類

まずはExcelのスタイルにある「条件付き書式」を開いてみます

条件付き書式
カラースケール
条件付き書式
広告

簡単なものであれば、デフォルトで用意されている書式ルールを利用しても充分です

今回は「カラースケール」について順に書式ルール毎に見ていきましょう

■カラースケール

これはセルの値を2色や3色のグラデーションを使用して、色の濃淡でセルを強調表示させるためのルールです

カラースケール 1
カラースケール

一番下にある「その他のルール」を選択した場合は、以下のような新しい書式ルールの画面が表示されます

カラースケール 2
その他のルール

「セルの強調表示ルール」でも使用した以下のデータをサンプルにして、条件付き書式を施してみます

条件付き書式-サンプルデータ
サンプルデータ

条件付き書式の対象範囲は、上図のサンプルデータの背景色が白い点数部分を対象として行います(範囲[Range]は「C4:K8」です)

・3色スケール

3つの色を使用して、指定した中間値を基準に大、中、小の値に対してそれぞれ指定した書式を施します

色のパターンを選択するだけで、中間値も自動で決まって、書式が施されますので便利ですね

– 書式ルールを確認

カラースケール 9

– マクロで記録してみる

緑、黄、赤のカラースケールの設定をマクロを使って、保存した結果が以下のVBAソースです

Sub Macro30()
'
' Macro30 カラースケール(3色)
'
'
    Range("C4:K8").Select
    Selection.FormatConditions.AddColorScale ColorScaleType:=3
    Selection.FormatConditions(Selection.FormatConditions.count).SetFirstPriority
    Selection.FormatConditions(1).ColorScaleCriteria(1).Type = _
        xlConditionValueLowestValue
    With Selection.FormatConditions(1).ColorScaleCriteria(1).FormatColor
        .Color = 7039480
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).ColorScaleCriteria(2).Type = _
        xlConditionValuePercentile
    Selection.FormatConditions(1).ColorScaleCriteria(2).Value = 50
    With Selection.FormatConditions(1).ColorScaleCriteria(2).FormatColor
        .Color = 8711167
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).ColorScaleCriteria(3).Type = _
        xlConditionValueHighestValue
    With Selection.FormatConditions(1).ColorScaleCriteria(3).FormatColor
        .Color = 8109667
        .TintAndShade = 0
    End With
End Sub

– マクロの説明

・簡単に説明

※VBAソースの詳細な説明は、その1の「指定の値より大きい」を参照

8行目:[AddColorScaleメソッド]で追加

9行目:優先順位の設定

10-11行目:[ColorScaleCriteriaコレクション]の1番目の種類を「最小値」に設定

12-15行目:[ColorScaleCriteriaコレクション]の1番目の「色」を設定

16-17行目:[ColorScaleCriteriaコレクション]の2番目の種類を「百分位」に設定

18行目:[ColorScaleCriteriaコレクション]の2番目の値を「50」に設定

19-22行目:[ColorScaleCriteriaコレクション]の2番目の「色」を設定

23-24行目:[ColorScaleCriteriaコレクション]の3番目の種類を「最大値」に設定

25-28行目:[ColorScaleCriteriaコレクション]の3番目の「色」を設定

・2色スケール

2つの色を使用して、指定した値を基準に大、小の値に対してそれぞれ指定した書式を施します

2色パターンを選択するだけで、書式が施されますので判り易いですね

広告

– 書式ルールを確認

カラースケール 16

– マクロで記録してみる

白、赤のカラースケールの設定をマクロを使って、保存した結果が以下のVBAソースです

Sub Macro31()
'
' Macro31 カラースケール(2色)
'
'
    Selection.FormatConditions.AddColorScale ColorScaleType:=2
    Selection.FormatConditions(Selection.FormatConditions.count).SetFirstPriority
    Selection.FormatConditions(1).ColorScaleCriteria(1).Type = _
        xlConditionValueLowestValue
    With Selection.FormatConditions(1).ColorScaleCriteria(1).FormatColor
        .Color = 7039480
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).ColorScaleCriteria(2).Type = _
        xlConditionValueHighestValue
    With Selection.FormatConditions(1).ColorScaleCriteria(2).FormatColor
        .Color = 16776444
        .TintAndShade = 0
    End With
End Sub

– マクロの説明

・簡単に説明

※VBAソースの詳細な説明は、その1の「指定の値より大きい」を参照

3色と2色の違いがどこに出ているのかを見ていきます

2色の場合は、[ColorScaleCriteriaコレクション]が2つしかありません

そして、最小値と最大値の設定のみで、中央値は存在しません

■最後に

・「百分位」とは?

選択された全データの値を百等分して順位(下から上に何番目)を指定するのが「百分位」という設定方法になり、値で指定した「50」は100個中の50個目(中央値)を意味します

※「100分の50(=50%)」とは意味が異なりますので、ご注意ください!

サンプルのように45個しか値がなくても「百分位」で「50」は中央値を指定する値として設定することができます

・次回は

アイコンセットを調べていきます!

それが終わったら、条件付き書式を利用して、1行や1列を塗り潰す方法を簡単に紹介していこうと思います!

ではでは

広告

やもす ʕ•͡-•ʔ

のんびり!のほほん!がモットーです!w 蕎麦食いたい ライブ行きたい 暑いの嫌い

シェアする