このページの本文へ移動
  1. ホーム >
  2. FMVサポート >
  3. Q&A・パソコン活用情報をコーナーから探す >
  4. エクセル関数塾 >
  5. 多い順?少ない順?RANK関数で順位を出してみよう!

エクセル関数塾

第20回多い順?少ない順?RANK関数で順位を出してみよう!

塾長、いつも関数塾でのご指導をありがとうございます。おかげさまで、今まで難しいと思って敬遠していた、VLOOKUP関数やSUMIF関数まで使って営業部の売上一覧ができました!

今度、営業部内で売上上位の人にちょっとしたボーナスが出るとあって、皆はりきっているのですが……「最新のランキングを教えてくれ!」と、営業部員からしょっちゅう問い合わせがあって……売上一覧から最新のランキングがすぐに表示できる関数があれば、ご教授いただけないでしょうか?

わしが、エクセル関数塾塾長!関 数之進(せきかずのしん)である!

ほほぉ!エクセルの関数を使って仕事がはかどっているようじゃのう。VLOOKUPやSUMIF関数を使うことができれば、順位を表示する関数など簡単じゃよ!

順位をつけるには「RANK関数」を使えば、最新の売上合計を基にいつでも、成績上位者順を求められるぞ!その技を極意書を使って説明しよう!

「SUMIF関数」については、下記ページにて説明しているぞ。

「VLOOKUP関数」については、下記ページにて説明しているぞ。

関数塾 極意書

RANK関数で順位を求めてみよう

エクセルでは、RANK(ランク)関数を使って、範囲内の順位を求めることができます。順位は、「降順(数の大きいものが上位)」「昇順(数の小さいものが上位)」を引数で指定できます。

ここでは、RANK関数の基本的な書式と機能について紹介します。

RANK関数の書式

RANK関数は次のように入力します。
=RANK(数値,参照,順序)

それぞれの引数は次のような値を指定します。

数値、参照、順序の値を指定している画面イメージ

数値:順位の基となる数値
参照:順位を出したい範囲
順序:「0」で降順(数の大きいものが上位)、「1」で昇順(数の小さいものが上位)

関数を入力するときは、[関数の挿入]ボタンをクリックして、[関数の分類]で[すべて表示]を選択すると、RANK関数が入力できます。

なお、Excel2010ではRANK関数が「RANK.EQ関数」「RANK.AVG関数」と分けられています。Excel2007以前の「RANK関数」と同じ関数が「RANK.EQ関数」で、「RANK.AVG関数」は同点の場合、その平均値を返す(同点1位が2つあった場合、「1.5」を返す)関数となっています。

今回の例では、売上一覧の「合計」(セルH13:H22)の担当者別集計が「売上合計」(セルC4:C8)にSUMIF関数で合計されています。売上合計の多い順(降順)に、D列に順位を求めてみましょう。

セルD4をアクティブにし、[数式]タブの[関数の挿入]をクリックしている画面イメージ

セルD4をアクティブにして、[数式]タブの[関数の挿入]をクリックします。

次へ

[関数の分類]で「すべて表示」を選択し、「RANK」を選択して、[OK]ボタンをクリックしている画面イメージ

[関数の分類]で「すべて表示」を選択し、「RANK」を選択して、[OK]をクリックします。

次へ

「数値」は順位の基となる数値を、「参照」は「$」マークをつけて絶対値指定にし、降順なので、順序は「0」と入力している画面イメージ

「数値」は順位の基となる数値を、「参照」は「$」マークをつけて絶対値指定にします。降順なので、順序は「0」と入力します。

次へ

入力した式を下にコピーし、売上合計の多い順位が表示されている画面イメージ

入力した式を下にコピーすると、売上合計の多い順位が表示されます。

ステップアップ:同じ値のときには、どのように順位が出るの?

RANK関数は、参照値に同じ値がある場合、同一順位がつきます。例えば、「2」位が2人いた場合、「1」「2」「2」「4」というように順位がつきます。

もし、「1」「2」「3」……と順位を同値にしたくない場合は、もう1つ値を増やすなどして、参照値を同値にしないように工夫してみましょう。

売上ランキングに同値がある画面イメージ

売上ランキングに同値があるため、「合計」と「売上数」の合計値で順位を出します。

次へ

セルF4をアクティブにし、E列の「合計+売上数」の順位を求めている画面イメージ

RANK関数を入力するセルF4をアクティブにし、E列の「合計+売上数」の順位を求めます。

次へ

RANK関数の式をセルF8までコピーしている画面イメージ

RANK関数の式をセルF8までコピーします。

次へ

D列と比べて、同値(4行目と6行目)の順位が違うことを確認している画面イメージ

D列と比べて、同値(4行目と6行目)の順位が違うことを確認します。

RANK関数は、範囲内の順位を求める関数です。順位は降順と昇順を引数で指定して範囲内の順位を切り替えることができます。RANK関数では、同じ値が同順位になるため、同順位にしたくない場合は、他の列の値などを参照値に増やして工夫してみると良いでしょう。

問題

次のようなサークル会員数ランキングを作成してみましょう。
次の表は、サークル会員数の一覧です。会員数が多いサークル順に順位を求めてみましょう。

サークル会員数の一覧の画面イメージ

※ 以下の内容はパソコンをご覧になっている方を対象としています。
サンプルをご利用になる場合は、パソコンにて本ページをご覧ください。

問題に必要なエクセルのファイルをダウンロードしてください。
ダウンロードするには、下記のファイル名を右クリックして、メニューから「対象をファイルに保存」を選択してください。

rank-sample.xls(28KB)

本講座では、ファイルの保存先を《ドキュメント》としています。
ダウンロード方法がわからない場合は、下記ページをご参照ください。

答えを見る