こんにちは!さとしんです。
みなさんは、エクセルの「RANK」関数を使ったことありますか??
RANK関数は、ある範囲の中での順位を表示してくれる関数です。
何かのデータから順位を表示する機会がある時には非常に便利な関数ですね。
僕もサッカーのコーチをしているので、大会の順位を表示する時などに良く使う関数です。
使い方もとても簡単なので、ぜひ覚えてください!
「RANK.EQ」はExcel2010から追加された関数です。
Excel2007でも表示させるためには、「RANK」として使用します。
それから、RANK関数には「RANK.EQ」の他にも、「RANK.AVG」というものもあります。
微妙に出力する結果が違うので、そこも簡単に説明します。
ちなみに、使い方は基本的に同じですのでご安心を!
RANK.EQ関数を使って順位を表示した例
まずは実際にRANK.EQ関数の動きを見てもらう事でイメージがつかめると思います。
テストの点数が記入されたリストに、点数順の順位を表示することができます。
RANK.EQ関数で出来ることはこれがほぼ全てです!非常にシンプルですね。
RANK.EQ関数を使用した、サッカーの対戦表の自動化の方法を「【ほぼ自動化!】Excel関数で対戦表の入力作業を効率化する方法」で解説しています。
先ほども書きましたが、使い方も本当に簡単なのですぐに覚えられると思います。
RANK.EQ関数の使い方
さっそくRANK.EQ関数の使い方を説明していきたいと思います。
まず、先ほどの例では以下の数式を入力していました。
D3セルに入力した数式↓↓
=RANK.EQ(C3,$C$3:$C$7,0)
入力する数式がなぜこの様になるのか?詳しく説明していきます。
RANK.EQ関数の説明文
RANK.EQ関数の説明は以下の通りです。
すこし分かりやすく、かみ砕いていきましょう。
RANK.EQで入力する数式の説明
数式の中身をそれぞれ説明します。
- 数値
-
順位を調べたい数値
- 参照
-
どの範囲の中での順位を調べるか?
- 順序
-
順位を昇順に表示するか、降順に表示するか?
先ほどのテストの点数の例で示すと、下記となります。
D3セルに入力した数式↓↓
=RANK.EQ(C3,$C$3:$C$7,0)
D4セル以降に入力する数式は以下の画像を参照してください。
D3セルをコピペするだけでOKです。
コピペすると、数式内の赤文字部分が自動で変わってくれます。
1点だけ補足しておきます。数式内の一部がいつもと違うことに気づきましたか?
=RANK.EQ(C3,$C$3:$C$7,0)
赤文字部分ですね。「$」という記号が含まれています。
「$」は”絶対参照”というものです。
- $が有る
-
絶対参照
- $が無い
-
相対参照
上記の様な名称になっています。
詳細は、また別の機会に説明します。
簡単に書いておくと、今回のようにD3セルの数式をD4セルにコピペする際に相対参照でコピーするとこのようになります。
D3セルをコピー
=RANK.EQ(C3,C3:C7,0)
D4セルにペースト
=RANK.EQ(C4,C4:C8,0)
赤文字部の参照範囲が変わってしまいました。
こうなると、順位が上手く表示されなくなってしまいます。
今回の例では、AさんからEさんまでの5名の中での順位を表示したいのですが、以下画像のようにBさんからEさんの4名の範囲で順位が表示されてしまいます。
こうならないように、順位を表示したい範囲(今回ならC3~C7)を絶対参照で指定してあげる必要があります。
絶対参照と相対参照の切り替えはF4キーでできます。
数式の中の切り替えたい部分を選択して、F4キーを押してみましょう。
RANK.AVG関数について
RANK.EQ関数と同じような関数で、RANK.AVG関数というものがあります。
この違いは、画像で見てもらえると分かりやすいと思いますので、以下をどうぞ。
順位が同じになった際に、表示される値が変わってきます。
- RANK.EQ
-
複数が同じ順位になった場合、その中の最上位の順位を表示
- RANK.AVG
-
複数が同じ順位になった場合、その中の平均の順位を表示
すごく簡単な説明ですが、このような違いがあります。
今回の記事では、RANK.EQ関数を使う前提で説明していますが、みなさんの好みや用途に応じて使い分けられるようにRANK.AVG関数も覚えておいて損はありません(^^)
実際にRANK.EQ関数を使ってみよう
さて、理解をより深めるために実際にRANK.EQ関数を使ってみましょう。
そこまで難しくないので、例題をやれば使い方のイメージはすぐにつかめると思います。
身長が”高い”人から順に順位を付ける
身長が”低い”順に順位を付ける
RANK.EQ関数を使う基本はこれだけです。
注意点としては、昇順、降順を気を付けるといった点のみかと思います。
順位を表示したいときはRANK.EQ関数を使いましょう!
ここまで説明した通り、RANK.EQ(RANK)関数は、範囲内での順位を表示してくれる関数でした。
僕の様なサッカーコーチなど、スポーツに携わる方は何かと順位を付けたい時があるはずです。
そんな時に、RANK関数を理解していれば、一瞬で順位を表示できてしまいますよね!!
僕も昔は、数字を見ながら自分で順位をひとつずつ手入力していた時期がありました…。
手入力の場合、以下のデメリットがあります。
- 順位の手入力は手間
- 入力を間違えてしまう可能性がある
RANK.EQ関数を覚えてからはそのような心配が一切不要になりました。
みなさんもRANK.EQ関数(RANK関数)の使い方をマスターして、順位付けの作業を正確、高速にしていきましょう(^^)
最後まで読んでいただきありがとうございました!