6. 順位付け

6−1 順位 (RANK 関数)
集団の中での順位付けをする関数は、RANK関数です。
=RANK(検査値, セル範囲 )
=RANK(検査値, セル範囲 , 順序 )
検査値 〜順位を知りたい値。
セル範囲 〜 順位付けの母集団を指定します。
順序 〜 省略したり、0 を指定すれば検査値が大きいほど高い順位。
0 以外の値を指定すれば検査値が小さいほど高い順位。
テストの成績など、値が大きいほど順位が上の場合は第3引数を省略し、スピード競技の記録など、
値が小さいほど準備が上の場合は第3引数を 1、TRUEなどとします。
(例) セル B2〜B6 に得点データが記述されています。
セル C2 に =RANK(B2, B$2B$6) が記述されています。
セル C3 に =RANK(B3, B$2B$6) が記述されています。
セル C4 に =RANK(B4, B$2B$6) が記述されています。
セル C5 に =RANK(B5, B$2B$6) が記述されています。
セル C6 に =RANK(B6, B$2B$6) が記述されています。
| A | B | C |
1 | 氏名 | 得点 | 順位 |
2 | 生徒氏名1 | 65 | 3 |
3 | 生徒氏名2 | 23 | 5 |
4 | 生徒氏名3 | 90 | 1 |
5 | 生徒氏名4 | 69 | 2 |
6 | 生徒氏名5 | 65 | 3 |
セル C2 に =RANK(B2, B$2:B$6) を入力して C3 から C6 に
その数式をコピーするような時は、セル参照を(少なくとも行番号は)絶対参照にしなければなりません。
そうしないとコピー先の第2引数が
C2 : =RANK(B2, B2:B6)
↓ ↓
C3 : =RANK(B3, B3:B7)
C4 : =RANK(B4, B4:B8)
C5 : =RANK(B5, B5:B9)
C6 : =RANK(B6, B6:B10)
というようにずれていき、わかりづらい誤りの元となってしまいます。
自分の順位には、「(自分より上位の人数)+1」の値が付きます。
同じ値には同じ順位が付きます。
上の例のセル C2, C6 と セル C3 に注目すればわかりますが、
3位が2人いた場合、次の順位は
(上位の人数…1位 1人+2位 1人+3位 2人)+ 1 = 5位
となります。もしも3位が50人いれば、次の人の順位は53位です。
|