- 作成日 : 2025年8月25日
ExcelのRANK.EQ関数の使い方:順位付けを簡単にマスターする方法
RANK.EQ関数は、Excelで数値データの順位を自動的に計算する便利な関数です。売上ランキングや成績順位、業績評価など、ビジネスや教育現場で頻繁に使用される機能で、大量のデータを瞬時に順位付けできます。
本記事では、RANK.EQ関数の基本的な使い方から実践的な応用方法、よくあるエラーの解決策まで、初心者でも理解できるよう詳しく解説します。関数の仕組みを理解することで、日々の業務効率を大幅に向上させることができるでしょう。
目次
RANK.EQ関数とは何か
RANK.EQ関数は、指定した数値が数値リストの中で何番目に位置するかを返すExcelの統計関数です。同じ値が複数存在する場合は、最も高い(良い)順位を返すという特徴があります。たとえば、100点満点のテストで同点の生徒が2人いた場合、両者とも同じ順位が割り当てられます。
この関数は、Excel 2010から導入された新しい関数で、それ以前のバージョンで使用されていたRANK関数の後継として開発されました。EQは「Equal(等しい)」を意味し、同じ値に対して同じ順位を付けることを明確に示しています。
RANK.EQ関数の基本的な使い方
関数の構文と引数
RANK.EQ関数の基本構文は次のとおりです。
=RANK.EQ(数値, 参照, [順序])
各引数の意味を詳しく見ていきましょう。
- 数値:順位を求めたい数値を指定します。セル参照や直接数値を入力できます。
- 参照:順位を決定するための数値リスト全体を指定します。通常はセル範囲で指定します。
- 順序:省略可能な引数で、順位の付け方を指定します。0または省略した場合は降順(大きい値が1位)、0以外の数値を指定すると昇順(小さい値が1位)になります。
基本的な使用例
売上データの順位付けを例に、具体的な使い方を説明します。
A列に営業担当者名、B列に売上金額が入力されているとします。C列に売上順位を表示する場合、C2セルに以下の数式を入力します。
=RANK.EQ(B2,$B$2:$B$10,0)
この数式では、B2セルの売上金額が、B2からB10までの売上金額の中で何位かを計算します。参照範囲を絶対参照($記号付き)にすることで、数式を下にコピーしても範囲がずれないようにしています。
RANK.EQ関数の利用シーン
営業成績の管理
営業部門では、個人やチームの成績を可視化する際にRANK.EQ関数が活躍します。月次売上、契約件数、新規開拓数など、様々な指標で順位付けを行うことで、成績優秀者の特定や改善が必要な担当者の把握が容易になります。
また、複数の評価指標を組み合わせた総合順位を算出する際にも有効です。売上金額だけでなく、利益率や顧客満足度を含めた多角的な評価が可能になります。
学校での成績管理
教育現場では、テストの点数や総合成績の順位付けにRANK.EQ関数を使用します。クラス内順位、学年順位、科目別順位など、様々な切り口での分析が可能です。
特に便利なのは、同点の生徒に同じ順位を付ける機能です。従来の手作業では煩雑だった同点処理が自動化され、公平な評価が実現できます。
在庫管理と商品分析
小売業や製造業では、商品の売れ筋ランキングや在庫回転率の順位付けにRANK.EQ関数を活用します。売上個数、売上金額、利益貢献度などの指標で商品をランク付けすることで、重点管理商品の特定や在庫調整の判断材料として活用できます。
RANK.EQ関数の応用テクニック
条件付き順位の計算
特定の条件を満たすデータのみで順位を計算したい場合があります。たとえば、部署別の売上順位を求める場合、RANK.EQ関数とIF関数を組み合わせて使用します。
営業部のみの順位を計算する例:
(Excel 365/2021 以降)
=IF(A2=”営業部”,RANK.EQ(B2,FILTER($B$2:$B$10,$A$2:$A$10=”営業部”),0),””)
(Excel 2010~2019 など FILTER が使えない場合:配列数式として CSE で確定)
=IF(A2=”営業部”,RANK.EQ(B2,IF($A$2:$A$10=”営業部”,$B$2:$B$10),0),””)
複数条件での順位付け
売上金額が同じ場合に、利益率で順位を決めるような複数条件での順位付けも可能です。RANK.EQ関数とCOUNTIFS関数を組み合わせることで実現できます。
=RANK.EQ(B2,$B$2:$B$10,0)+COUNTIFS($B$2:$B$10,B2,$C$2:$C$10,”>”&C2)
この数式では、売上金額(B列)で基本順位を計算し、同じ売上金額の中で「自分より利益率(C列)が高い」件数を加算して最終順位を決定します。
動的な順位表示
データが追加・変更されても自動的に順位が更新されるようにするには、テーブル機能と組み合わせて使用します。データ範囲をテーブルに変換することで、新しいデータが追加されても参照範囲が自動的に拡張され、常に正確な順位が表示されます。
順位の可視化
RANK.EQ関数で計算した順位を、条件付き書式やグラフと組み合わせることで、より直感的な表示が可能になります。上位3位までを色分けしたり、順位の推移をグラフで表示したりすることで、データの理解が深まります。
RANK.EQ関数のよくあるエラーと対策
#N/Aエラーの対処法
RANK.EQ関数でよく見られるエラーの一つが#N/Aエラーです。このエラーは、順位を求めたい数値が参照範囲内に存在しない場合に発生します。
対策として、IFERROR関数でエラー処理を行います。
=IFERROR(RANK.EQ(B2,$B$2:$B$10,0),”データなし”)
この数式により、エラーが発生した場合は「データなし」と表示されます。
参照範囲の設定ミス
参照範囲に文字列や空白セルが含まれていると、正しい順位が計算されません。数値データのみを含む範囲を正確に指定することが重要です。
また、相対参照と絶対参照の使い分けも重要なポイントです。数式をコピーする際に参照範囲がずれないよう、適切に$記号を使用して絶対参照を設定します。
同順位の扱い
RANK.EQ関数では同じ値に同じ順位が付けられますが、次の順位は飛ばされます。たとえば、2位が2人いる場合、次は4位となります。連続した順位が必要な場合は、別の方法を検討する必要があります。
連続した順位には、目的に応じて次の2通りがあります。
- 同値は同じ順位のまま番号を詰める(連続順位=Dense Rank)
- (Excel 365/2021 以降)
=RANK.EQ(B2,UNIQUE($B$2:$B$10),0)
※UNIQUEで重複を除いた値に対して順位を付けるため、1,2,2,3…のように“飛び番なし”で同率は同順位になります。 - (UNIQUEが使えない環境)
=SUMPRODUCT( ($B$2:$B$10>B2) / COUNTIF($B$2:$B$10,$B$2:$B$10) ) + 1
- (Excel 365/2021 以降)
- 同値でも一意の連番にする(先着順で差をつける)
- 行の出現順で同値を並べ替えたい場合:
=RANK.EQ(B2,$B$2:$B$10,0) + COUNTIF($B$2:B2,B2) – 1
※この式は 1,2,3,4… と必ず連番になり、同値でも先に現れた行が上位になります。
- 行の出現順で同値を並べ替えたい場合:
大量データでの処理速度
数万行を超えるような大量データでRANK.EQ関数を使用すると、計算速度が低下することがあります。この場合、以下の対策が有効です。
計算を手動に切り替えて、必要なときだけ再計算を実行する方法があります。また、ピボットテーブルを使用して順位を計算する代替手段も検討できます。
循環参照エラー
RANK.EQ関数の参照範囲に、関数を入力したセル自体が含まれると循環参照エラーが発生します。参照範囲を設定する際は、関数を入力するセルを除外するよう注意が必要です。
RANK.EQ関数と他の順位関数との比較
RANK関数との違い
Excel 2007以前で使用されていたRANK関数は、RANK.EQ関数と同じ動作をしますが、Excel 2010以降では互換性のために残されているだけです。新しいファイルではRANK.EQ関数の使用が推奨されています。
RANK.AVG関数との使い分け
RANK.AVG関数は、同じ値に対して平均順位を付ける関数です。たとえば、2位が2人いる場合、両者に2.5位が付けられ、次は4位となります。統計分析では平均順位が必要な場合があり、用途に応じて使い分けます。
LARGE関数・SMALL関数との組み合わせ
LARGE関数やSMALL関数と組み合わせることで、上位N件や下位N件の抽出が可能になります。RANK.EQ関数で順位を計算し、その結果を基にデータを抽出する応用的な使い方ができます。
RANK.EQ関数でデータの順位を簡単に表示
RANK.EQ関数は、指定した数値がデータ内で何番目に位置するかを計算できるExcelの統計関数で、売上成績やテスト結果、商品ランキングなどの集計に活用されます。同順位には同じ順位が付与され、降順・昇順の切り替えも可能なため、柔軟なランキング処理が行えます。
IF関数やCOUNTIFS関数と組み合わせることで、条件付きの順位付けや複数条件による評価も実現可能です。RANK.EQ関数は、旧RANK関数の後継としてExcel 2010以降に導入されており、現在では標準的な手法として多くの場面で使われています。
注意点としては、#N/Aエラーや参照範囲の設定ミス、同順位後の順位の飛びなどがありますが、IFERRORやCOUNTIFとの併用で対応できます。RANK.EQ関数を正しく使いこなせば、日々の評価業務やデータ分析の正確性と作業効率の向上につながります。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
スプレッドシートで足し算するには?数式や関数、セル参照の基本と応用まで解説
Googleスプレッドシートの「足し算」は、セルに直接数式を入力する方法から、SUM関数による効率的な合計、条件付き合計や配列関数による高度な集計まで、多様なやり方があります。 使い分けを理解すれば、売上集計や経費計算といった日々のデータ処…
詳しくみるXMATCH関数の使い方:高度な検索を簡単に実現する方法
XMATCH関数は、指定した値がリストや表の中で何番目にあるかを調べるExcelの検索関数です。従来のMATCH関数と似ていますが、部分一致やワイルドカード、後ろからの検索など、より柔軟な検索機能が追加されています。 大規模なデータでも正確…
詳しくみるエクセルでシート移動するためのショートカットを紹介
エクセルを使用する際、複数のシートを効率的に移動する技術は、業務のスムーズな進行に欠かせません。シート間の移動を簡単にするためのショートカットキーや操作方法を活用することで、作業効率が大幅に向上します。本記事では、エクセルでシートを移動する…
詳しくみるAVERAGEIF関数の使い方:条件に一致するデータの平均を計算する方法
AVERAGEIF関数は、指定した条件に一致するデータの平均値を計算する関数です。売上データの条件付き分析、成績の科目別平均計算、アンケート結果の属性別集計、在庫数量や販売データのカテゴリー別平均算出など、特定の条件でフィルタリングした平均…
詳しくみるスプレッドシートに画像を挿入するには?スマホ対応や挿入できない場合まで解説
Googleスプレッドシートに画像を挿入することで、データの視覚化や資料の説得力を大幅に向上させることができます。商品リストに写真を追加したり、グラフやロゴを配置したりと、活用方法は多岐にわたります。 この記事では、PCとスマホそれぞれでの…
詳しくみるエクセルで日付を入力するには?簡単・自動でできる方法を解説
エクセルは多機能な表計算ソフトウェアであり、日付の管理を効率的に行う手段として非常に便利です。日付を手動で入力するのは手間がかかりますが、簡単に自動で入力する方法が存在します。さらに、特定の形式で日付を短時間で入力するテクニックや、日付の連…
詳しくみる