【Excel・エクセル】順位をつけるRANK関数でランキングする!

調べる

もりの

5人を点数順にランキングしたいんだけど、関数でできないかな?

やまの

順位付けしたいなら、RANK関数で一発なんよ!

今回のポイント
  • 順位を調べるにはRANK関数
  • 引数は(順位を知りたい値,どの範囲の中での順位か)
  • 数値が少ない方が上位の場合、最後に「,1」をつける

スポンサーリンク

RANK関数の練習ファイルダウンロード

もりの

一緒にやってみませんか?

【Excel・エクセル】順位をつけるにはRANK関数

数人の点数に順位を付けるなら、パッと見で分かります。

が、それが50人、100人と増えていくと、とても目視で確認はできませんよね。

ランキングを付けたい表
これ全部目視で?ムリゲー

そんな時使えるのが、RANK関数です。
指定した範囲の中での順位を、サクッとランキングしてくれます!

もりのの笑った顔
もりの

成績を順位付けしたり、売れ筋商品ランキングなんかもできちゃうね!

ちなみに読み方は「ランク関数」です。

RANK.EQ関数とRANK.AVG関数とは

※ここは読み飛ばしOK!

RANK関数を見てみると、他にRANK.EQ関数とRANK.AVG関数ってのがありますね?

RANK関数には3つの種類があるのでしょうか?

3つのRANK関数が表示された画面
RANK関数は3種類ある?
やまの

RANK関数とRANK.EQ関数は同じものだから、2種類かな?

RANK関数、RANK.EQ関数とRANK.AVG関数の違いは、同順位だった場合の結果です。

実際にどうなるのかは「【Excel・エクセル】順位が同点だった場合」でお話ししますが、基本はRANK関数を使えばOKだと思います!

さっそくRANK関数を使って、順位の出し方を見てみましょう!

【Excel・エクセル】順位をつけるRANK関数の使い方

RANK数式の書き方

=RANK(数値,参照,順序)

やまの

それぞれはこういう意味だよ。

RANK順位を教えて!
数値この値は
参照この中で何位か
順序数値が高い方が1位か、低い方が1位か(省略可)

RANK関数の使用例

この表の中で点数が高い順に、C列に順位をランキングしたいと思います。

RANK関数を使ってセルC2に、田中さんの順位を求めてみましょう。

C列にそれぞれの順位を求めたい
C列にそれぞれの順位を求めたい
やまの

=RANK(B2,B2:B6)
で求められるよ。説明していくね。

ステップ1

まずはC2のセルに、「=RANK(」と入力してください。

RANK関数の書き始め
まずは=RANKと入力

ステップ2

次に数値、順位を知りたい値です。
今回は、「田中さんの点数は5人の点数の中で何番目か」を知りたいので、田中さんの点数が書かれたB2のセルですね。

B2のセルをクリックして、「,(カンマ)」で区切ってください。

または直接「B2,」と入力してもOKです。

B2セルをクリックし、カンマを入力
B2セルをクリックし、カンマを入力

ステップ3

次は参照、どの範囲の中での順位かですね。

今回は、「5人の点数の中での順位」を知りたいので、5人の点数が書いてあるB2~B6ですね。

B2セルからB6セルまでをドラッグしてください。

B2~B6セルをドラッグ
B2~B6セルをドラッグ、「)」で閉じる
もりの

B2の数値は、B2~B6の範囲の中で何位ですか?ってことだね。

ステップ4

オートフィルしたときにおかしくなっちゃうので、RANK関数の範囲は絶対参照にしておくことをオススメします。

「F4キー」を押して$(ドルマーク)をつけましょう。

完成!

これで式は書けたので、Enterキーで確定してください。

田中さんは4位らしいです。

RANK関数を使った式
RANK関数完成!

オートフィルでコピーすれば、全員の順位が分かりました。

ランキングも簡単に付けられますね。

全員の順位が分かり、ランキングされた画像
点数のランキングが出た
もりの

あれ、もう一つ「順序」ってなかった?

やまの

点数が多い順に順位をつける場合は、省略できるんよ。

降順(大きい順)で順位をつける場合、引数の順序のは書かなくてもOKです。
書く場合は、0と入力してください。

昇順(小さい順)で順位をつけるには

では昇順、数値が少ない方が順位が上になるようにするには、どうすればいいでしょうか?

ステップ1

これは簡単で、先ほどの式の最後に、「,(カンマ)1」を追加するだけです。

先ほどの式に入れると……

昇順の場合「,1」を追加する
昇順の場合「,1」を追加する

完成!

順位が2位になりました。

点数が少ない方が上位になるので、ちゃんと昇順で順位がつけられていますね。

RANK関数で昇順を選んだ結果
点数が少ない方が順位が上になった
もりの

0が降順、1が昇順で、0の場合は省略可能っと。

【Excel・エクセル】順位で並べ替えするには

RANK関数で出た順位を並び替えすれば、順位で並び替えは簡単にできます。

順位のセルをクリックして、「データタブ」→並べ替えとフィルターのところにある「昇順」をクリックです。

または「Altキー → Aキー → Sキー → Aキー」と順番に押してもできます。

順位で並び替えする画像
順位で並び替えするには

ランキング順に並べ替えできましたね。

ランキング順に並べ替えした画像
順位で並べ替えできた

【Excel・エクセル】順位が同点だった場合

では、点数が全く同じで同順位になる場合、どうなるのでしょうか?

同点の人がいる表
同点の人がいる場合

C列にRANK関数を使って、点数で順位をつけてみると……

同点の人が同順位になりました!

同点がいる表でランキングした場合
同点がいる表でランキングした場合
もりの

1位が2人いるよ?そして、2位がいなくて3位になってる。

そう、RANK関数で同点がいた場合、その人たちは同じ順位になります。

今回は石井さんと井上さんが同じ81点で1位。
その次は佐藤さんですが、順番としては上から3人目なので、3位となるのです。

RANK.AVG関数で同順位だった場合

やまの

ちなみに、RANK.AVG関数だと結果が違うんよ。

RANK.AVG関数を使って、同じ表に順位をつけてみました。

先ほどと同点だったときの結果が違い、1位は1.5、5位は6になりました。

RANK.AVE関数を使った場合の同順
RANK.AVE関数を使った場合
もりの

ど、どういうこと?

やまのののんびりした顔
やまの

同じ順位の平均値になるんよ。

今回の例では、1位が2人。本来は1位と2位なので、1と2の平均で1.5。

5位が3人ということは、本来は5位、6位、7位となるので、平均の6が表示されたってことですね。

もりの

確かに、普通にRANK関数でいい気がしてきた……

これで、順位も簡単にわかって、ランキング順に並べ替えも楽々できますね!
それでは、お疲れさまでした!

今回のおさらい
  • 順位を調べるにはRANK関数
  • 引数は(順位を知りたい値,どの範囲の中での順位か)
  • 数値が少ない方が上位の場合、最後に「,1」をつける

RANK関数を動画で見る