RANK.EQ 関数
適用対象: Microsoft Excel 2010, Excel Web App, SharePoint Online for enterprises, SharePoint Online for professionals and small businesses
数値のリストの中で、指定した数値の順位を返します。返される順位は、範囲内の他の値との相対的な位置になります。複数の値が同じ順位にあるときは、それらの値の最上位の順位が返されます。
リストの数値の順序を並べ替えても、指定した数値の順位は変わりません。
書式
RANK.EQ(数値,範囲,[順序])
- 数値 必ず指定します。範囲内での順位 (位置) を調べる数値を指定します。
- 範囲 必ず指定します。数値の範囲の配列またはその範囲への参照を指定します。参照に含まれる数値以外の値は無視されます。
- 順序 省略可能です。範囲内の数値を並べる方法を指定します。
順序に 0 を指定するか、順序を省略すると、範囲内の数値が ...3、2、1 のように降順に並べ替えられます。
順序に 0 以外の数値を指定すると、範囲内の数値が 1、2、3、... のように昇順で並べ替えられます。
解説
- RANK.EQ 関数では、重複した数値は同じ順位と見なされます。数値が重複していると、それ以降の数値の順位がずれていきます。たとえば、昇順に並べられた整数のリストがあり、そのリストに 10 が 2 度現れ、その順位が 5 であるとき、11 の順位は 7 となります (順位が 6 の数値はありません)。
- 目的によっては、同順位も考慮した順位定義の使用が必要となる場合もあります。たとえば、前の使用例で 10 の順位を 5.5 に訂正できた方がよい場合があります。そのためには、下記の補正因子を RANK.EQ 関数の戻り値に加算します。この補正因子は、順位を降順 (順序に 0 を指定するか、省略した場合) または昇順 (順序に 0 以外の数値を指定した場合) のどちらで計算する場合にも使用できます。
同順位の補正因子=[COUNT(範囲) + 1 – RANK.EQ(数値, 範囲, 0) – RANK.EQ(数値, 範囲, 1)]/2
次の使用例では、RANK.EQ(A2,A1:A5,1) は 3 になります。補正因子は (5 + 1 – 2 – 3)/2 = 0.5 となるので、同順位を考慮して訂正した順位は 3 + 0.5 = 3.5 となります。範囲内に 1 回だけ現れる数値の場合、その補正因子は 0 になり、RANK.EQ の戻り値に対して同順位の調整を行う必要はありません。
使用例
使用例を新規のワークシートにコピーすると、計算結果を確認できます。
その方法は?
- RANK.EQ 関数のページへのリンク