スプレッドシートのRANK関数の使い方や、指定の順位を抽出する方法をご紹介します。データをランキング順で並び替える方法や、特定の順位に自動で色付けする方法についても解説しているので、ぜひ参考にしてみてください。
RANK関数で順位付けする方法
順位付けの関数にはRANK関数、RANK.EQ関数、RANK.AVG関数の3つがあります。元々RANK関数1つだったものがRANK.EQ、RANK.AVGに派生したイメージで、現在はこの2つが主流です。
RANK関数の使い方
RANK関数は指定した値を、データ範囲内で比較したときの順位で返します。順序には、並べ替え方を降順(0)または昇順(1)で指定します。
- 0 (FALSE) または 省略:範囲内の数値を、最大値を 1 番目として順位付けします。
- 1 (TREU):範囲内の数値を、最小値を 1 番目として順位付けします。
RANK関数の構成要素:(値, データ範囲, [順序])
RANK.AVG関数の使い方
RANK.AVG関数は同じ値が複数存在する場合に、値の平均順位を返します。
例えば 1 位が2つ存在するときにRANK.EQ関数は値の最上値に当たる 1 を返しますが、RANK.AVG関数は値の平均順位 1.5 を返します。
RANK関数とRANK.EQ関数は、同じものと考えて問題ありません。
RANK.AVG関数の構成要素:(値,データ範囲,[順序])
ランキング(順位)で並び替える方法
SORT関数は指定した範囲を、並べ替える列を基準として昇順または降順に並べ替えます。昇順(小さい順)なら TRUEを、降順(大きい順)なら FALSE を指定してください。
例えば SORT(A2:A6,3,FALSE) なら 3 列目(価格)を基準として、範囲を降順に並び替えます。
SORT関数の構成要素:(範囲, 並べ替える列, 順序, [並べ替える列2, 順序, …])
ランキング(順位)で抽出する方法
データを降順(または昇順)に並べ替えたときに5番目に該当する値など、大量のデータの中から特定の順位の値だけを抽出したいときに便利な関数です。
順位を降順で抽出する方法
LARGE関数は指定したデータ範囲から、 n 番目に大きな値を返します。
例えば LARGE(C2:C6,F2) なら、 1 番目に大きい価格 1,200 を返します。値に順位を付けるRANK関数とは反対に、順位から値を抽出するのが特徴です。
LARGE関数の構成要素:(データ範囲, 順位)
順位を昇順で抽出する方法
SMALL関数は指定したデータ範囲から、 n 番目に小さな値を返します。例えば SMALL(C2:C6,F2) なら、 1 番目に小さい価格 100 を返します。
SMALL関数の構成要素:(データ範囲, 順位)
ランキング(順位)で色付けする方法
まず色付けする範囲を選択し、表示形式タブから[条件付き書式]を開きます。
次にセルの書式設定の条件を、[カスタム数式]にしてください。
1番大きい値に色付けするなら、数式は RANK($C2,$C$2:$C$6,0)=1 です。値にはトリガー列の先頭のセルを指定し、$記号を付けて列のみ固定してください。
例えば 上位 3 つのセルに色付けするなら、 RANK()<4 です。
未満を表す比較演算子を使用しているので、4より小さい= 上位 3つ を表しています。
比較演算子:以下(<=)、より小さい(<)、以上(>=)、より大きい(>)、等しくない(<>)
順位に関する関数まとめ
今回はご紹介した関数は、以下の通りです。RANK関数で順位を付けたデータはランキング順に並べ替えれば、データの視認性をさらにアップできます。
- RANK(RANK.EQ)関数:値の順位を返します。同じ値が複数ある場合、上位順位を返します。
- RANK.AVG関数:値の順位を返します。同じ値が複数ある場合、平均順位を返します。
- LARGE関数:n番目に大きい値を返します。
- SMALL関数:n番目に小さい値を返します。