1/18/2022

Excel。条件付き書式で、上位3件を行全体で塗りつぶしたいけど、どうしたらいいの。【TOP3】

Excel。条件付き書式で、上位3件を行全体で塗りつぶしたいけど、どうしたらいいの。

<条件付き書式+LARGE関数>

条件付き書式をつかうことで、視覚的に資料をわかりやすくすることができます。


最初から用意されているものでも十分ですが、行全体にも反映させたい場合は、アレンジしないとできません。


今回は、上位3件のデータの行全体を塗りつぶししたい場合でみてみましょう。


セルのみに条件付き書式を設定したいならば、ホームタブの条件付き書式にある「上位/下位ルール」の上位10項目をつかって、3項目にすればいいわけですが、行全体になると、対応することができません。


行全体とか列全体という場合には、数式を使った条件設定で対応することになります。


やりたいことは、上位3件。

つまり、1位~3位のデータがわかればいいわけです。


そこで、使う関数は、LARGE関数です。

 

A2:F6を範囲選択して、ホームタブの条件付き書式にある「新しいルール」をクリックします。


新しい書式ルールダイアログボックスが表示されます。


「数式を使用して、書式設定するセルを決定」をクリックして、「次の数式を満たす場合に値を書式設定」のボックスに、次の数式を設定します。


=$F2>=LARGE($F$2:$F$6,3)


あとは、書式ボタンをクリックして、セルの色を設定したら、OKボタンをクリックして設定完了です。


これで、行全体に塗りつぶしを行うことができました。


数式も確認しておきましょう。


「$F2」のように、列固定の複合参照にすることで、行全体を対象とすることができます。


「LARGE($F$2:$F$6,3)」で、上位3番目の値を算出できます。

その値以上ならば、上位1位~3位に該当します。


逆に、下位の場合には、「SMALL関数」をつかえば、同じように設定することができます。


ところで、なぜ、LARGE関数をつかうのかというと、MAX関数は、最上位のデータしか判別できません。

最上位(1位)以外の上位の値を算出するには、LARGE関数を使う必要があります。

RANK.EQ関数という方法もありますが、一度順位を算出させたあと、3以下のデータなのか判断させる数式で条件を設定する必要があるので、LARGE関数よりも、作業量が増えてしまいます。


手早く行う点からみても、LARGE関数をつかうといいですね。