Excel。上位3位までのデータがわかりやすいように、行全体を塗りつぶしたい
<条件付き書式+LARGE関数>
上位1位から3位までのデータを視覚的にわかりやすくした表を作りたいとします。
フィールド数(見出し列数)が多い場合には、データのセルだけを塗りつぶすよりも、レコード(行)全体を対象に塗りつぶしをしたほうが、いいと思うわけですね。
次のような表を作りたいわけです。
手早く設定するには、当然、目視で確認するわけではなく、条件付き書式をつかうわけです。
問題になるポイントが、どのような数式を設定すればいいのかということですね。
条件付き書式に用意させているものは、対象になるセルにしか、書式を反映することができないので、行全体と考えた時点で、条件付き書式の条件は数式を使わないといけないわけですね。
上位3位ということなので、RANK.EQ関数で順位を算出してもいいのですが、一度順位を算出した列をつくらないといけないので、効率的にちょっと、オススメできません。
そこで、上位3位の数値を算出させて、算出結果より以上の数値ならば、上位3位に入ることがわかります。
上位何番目というのを算出する時につかうのが「LARGE関数」です。
では、条件付き書式を設定していきますので、A2:B16を範囲選択して、ホームタブの条件付き書式にある、「新しいルール」をクリックします。
すると、「新しい書式ルール」ダイアログボックスが表示されます。
「数式を使用して、書式設定するセルを決定」をクリックして、「次の数式を満たす場合に値を書式設定」のボックスに、次の数式を設定します。
=$B2>=LARGE($B$2:$B$16,3)
あとは、書式ボタンをクリックして、塗りつぶしたい色を設定します。
これで、上位1位~3位のデータを行全体で塗りつぶすことができます。
設定した数式を説明しておきましょう。
=$B2>=LARGE($B$2:$B$16,3)
「$B2」と列側だけに絶対参照にする「複合参照」にすることで、行全体を塗りつぶすことができます。
あとは、LARGE関数の引数ですが、最初の引数は、配列なので範囲のことです。
絶対参照を忘れないように設定します。
そして、何位という順位を次に設定します。
上位3位のデータを算出したいので、「3」と設定すればいいわけですね。
このように、条件付き書式の条件に数式をうまく取り入れることで、様々な表現を帳票に組み込むことができます。
今回のように、色々試してみると、よりよい帳票や資料が作れるかもしれませんね。