知恵と経験をつなぎ、次のチャレンジへ
スプレッドシートのRANK関数をビジネスで活用!

スプレッドシートのRANK関数をビジネスで活用!

業務で使える順位付けスキル

「売上トップ10を自動で抜き出したい」
「チームメンバーの成績を順位付きで表示したい」

並べ替えやフィルタを使わずに“順位”を一発で求められるのが RANK 関数(Google スプレッドシートでは RANK.EQRANK.AVG)。
本記事では 実データ+数式+出力結果 を示しながら、
RANK の基本/同順位処理/動的ランキング までを解説。
さらに SORT 関数やピボットテーブルとの使い分けメリット・デメリット も整理しました。


1. RANK 関数ファミリー

関数形式重複値の扱い
RANK.EQ=RANK.EQ(数値, 参照範囲, [順序])同値は“同順位”で次順位が飛ぶ
(1位,1位,3位…)
RANK.AVG=RANK.AVG(数値, 参照範囲, [順序])同値は平均順位を返す
(1.5位,1.5位,3位…)

順序引数

  • 0 または省略 → 降順(大きい数値が 1 位)
  • 1昇順(小さい数値が 1 位)

2. 基本例:売上ランキング

A列: 担当B列: 売上(円)
佐藤1,200,000
鈴木950,000
田中1,350,000

■ B2 に対する順位(C2 セルに入力して下へコピー)

=RANK.EQ(B2, $B$2:$B$4, 0)
担当売上順位
佐藤1,200,0002
鈴木950,0003
田中1,350,0001

ポイント

  • 範囲を 絶対参照$B$2:$B$4)で固定
  • データ追加時は範囲を十分に広げる or ARRAYFORMULA で動的対応

3. 同順位が出る場合:EQ と AVG の違い

スコアRANK.EQRANK.AVG
9011.5
9011.5
8033

選び方

  • EQ: 表彰・トップ N 抽出など“飛び級”が欲しいとき
  • AVG: 平均順位まで含めた統計処理や KPI 可視化

4. 応用例①:動的ランキング表(ARRAYFORMULA)

=ARRAYFORMULA( RANK.EQ( B2:B, B2:B, 0 ) )
  • B 列にデータを追加するだけで C 列の順位が自動拡張。
  • 別シートにリンクしたダッシュボードでもリアルタイム更新。

5. 応用例②:部門別 × 月別で順位付け(FILTER+RANK)

=ARRAYFORMULA(
IF( 部門列="営業",
RANK.EQ( 売上列 , FILTER(売上列 , 部門列="営業"), 0 ),
"" )
)

営業部だけで相対順位を計算し、他部門は空白。
クロス集計前の前処理に便利。


6. SORT 関数を使わず RANK で順位列を作るメリット・デメリット

観点RANK 関数SORT 関数
データ保持元表の行順を変えず “順位列” を追加できる並べ替え後は行順が変わる(元との対応が分かりづらい)
VLOOKUP/INDEX 連携順位列をキーに別表へ照合しやすい並べ替え毎に行位置が変動、参照がズレやすい
同順位処理RANK.AVG で平均順位、EQ で飛び級が選べる同順位の場合は行順が先か後かに依存
Top N 可視化条件付き書式で「順位<=10」などで強調可SORTN+行抽出で Top N 表を別に作る
ユーザー視認性順位列を見れば 1 位がどこか一目瞭然並べ替え表でないと“何位なのか”が不明
更新コストデータ増で計算量アップ → 大量行だとやや重いレンジ全体を毎回並べ替え、こちらも重いが単一操作
一時的な並べ替え式編集が必要列▲▼クリックで瞬時

要点

  • レポートや KPI 表に順位列を持たせたい ➜ RANK が最適
  • テーブル全体を並べ替えて表示したい ➜ SORT / フィルタビュー

7. 業務活用シーン

シーン使い方例効果
営業:売上ランキングRANK.EQ で社内順位、条件付き書式で上位3名着色モチベーション可視化
マーケ:CVR順位RANK.AVG(CVR列, CVR列, 0)同率施策の平均順位で公平評価
人事:勤怠評価RANK.EQ(残業時間列, 残業時間列, 1)残業時間“少ない順” で 1 位がホワイト勤務
財務:支出科目 Top10RANK.EQ(金額列, 金額列, 0) <=10 を FILTER大口経費を即抽出
在庫:発注優先度在庫量 ASC 順位を求めて低い順に発注欠品リスクを数値化

8. よくあるエラー & 回避策

症状 / エラー原因対処
#N/A参照範囲に空白・文字列IFERROR() でガード、範囲を数値列だけに
順位が飛ばない/平均にならない間違えて EQ / AVG を使い分けていない用途に合わせて関数を選定
データ増で計算遅延ARRAYFORMULA+数万行必要範囲だけに制限 or QUERY で集計後に RANK

9. まとめ & 早見表

目的代表式キーワード
基本降順順位=RANK.EQ(B2,$B$2:$B$100,0)売上順位
昇順(小が1位)=RANK.EQ(C2,$C$2:$C$100,1)残業少→多
同値平均順位=RANK.AVG(D2,$D$2:$D$100,0)統計用
動的トップ10強調=ARRAYFORMULA(RANK.EQ(B2:B,B2:B,0)) + 条件付き書式リアルタイムランキング

RANK 関数で“順位”をセルに可視化!
SORT だけでは分からない「今 何位か」を一目で示し、
条件付き書式・FILTER・QUERY と組み合わせれば
ダッシュボードや KPI 共有がグッと分かりやすくなります。