- 作成日 : 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関数を正しく使いこなせば、日々の評価業務やデータ分析の正確性と作業効率の向上につながります。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
エクセルで乱数を作るには?RAND関数・RANDBETWEEN関数を使おう
エクセルを活用することで、簡単に乱数を生成することができます。特に、RAND関数やRANDBETWEEN関数を利用することで、さまざまな用途に応じた乱数を手軽に作成することが可能です。本記事では、これらの関数の使い方や、エクセルで重複しない…
詳しくみるエクセルで文字を丸で囲む簡単な方法を解説
エクセルで作業をする際、文字を丸で囲むことで視覚的に目立たせることができます。この操作は、重要な情報を強調したり、特定のデータをグループ化するのに非常に便利です。本記事では、エクセルで文字を簡単に丸で囲む方法を詳しく解説します。手順はシンプ…
詳しくみるエクセルのSTDEV関数とは?データ分析の基本から応用まで
STDEV関数は、データのばらつき具合を示す「標準偏差」を算出するエクセル関数です。データ分析において、数値の散らばり度合いを把握する際に、STDEV関数が役立ちます。 この関数を使いこなすことで、例えば、テストの点数のばらつき具合、売上の…
詳しくみるエクセルで表示を拡大・縮小する方法とショートカット
この記事では、エクセル初心者の方でも簡単に理解できるように、表示を拡大・縮小させるための様々な方法を徹底解説します。基本的なショートカットキーから、知っておくと便利なテクニック、そして拡大・縮小がうまくいかない場合の対処法まで、幅広くご紹介…
詳しくみるエクセルで割り算するには?使える関数や一気に割り算する方法を解説
エクセルは多くのビジネスシーンで使用される強力なツールです。計算業務を効率化し、正確なデータ処理を行うために、エクセルの割り算に関する基本的な知識を身につけることが重要です。関数を使った割り算の方法や具体的な手順について解説します。これによ…
詳しくみるTRUNC関数の使い方!数値の切り捨て、切り上げ切り捨て方法を解説
ExcelのTRUNC関数(読み方:トランク関数)は、指定した桁数で数値を切り捨てる関数です。 この記事では、TRUNC関数の基本的な使い方から、INT関数やROUNDDOWN関数との違い、具体的な利用シーンや注意点までを初心者にもわかりや…
詳しくみる