ここでは、Microsoft Excel の RANK 関数の書式および使用法について説明します。

説明

数値のリスト内の数値のランクを返します。 そのサイズは、リスト内の他の値に対して相対的です。複数の値のランクが同じ場合は、その値セットの上位ランクが返されます。

リストの数値の順序を並べ替えても、指定した数値の順位は変わりません。

書式

RANK.EQ(数値,範囲,[順序])

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(A3,A2:A6,1) は 3 です。 補正因子は (5 + 1 – 2 – 3)/2 = 0.5 となるので、同順位を考慮して訂正した順位は 3 + 0.5 = 3.5 となります。 範囲内に 1 回だけ現れる数値の場合、その補正因子は 0 になり、RANK.EQ の戻り値に対して同順位の調整を行う必要はありません。

使用例

次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。 数式を選択して、F2 キーを押し、さらに Enter キーを押すと、結果が表示されます。 必要に応じて、列幅を調整してすべてのデータを表示してください。

データ

7

3.5

3.5

1

2

数式

説明

結果

=RANK.EQ(A2,A2:A6,1)

範囲 A2:A6 の中で、7 の順位を調べます。 順序の引数 (1) がゼロ以外の値なので、リストは昇順に並べ替えられます。

5

=RANK.EQ(A6,A2:A6)

同じリストの中で、2 の順位を調べます。 順序の引数が省略されているので、リストは既定に従って降順で並べ替えられます。

4

=RANK.EQ(A3,A2:A6,1)

同じリストの中で、3.5 の順位を調べます。

3

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。