FILTER+SORT+UNIQUE+SEQUENCEで動的リスト・ランキングを作る方法【新関数シリーズ総集編】

Excel

はじめに

これまでの記事で紹介してきた
FILTER関数(抽出)/SORT関数(並べ替え)/UNIQUE関数(重複除去)/SEQUENCE関数(自動連番)

この4つを組み合わせると、
Excelが自動でリストを作り、並べ替え、番号を振る——
つまり「完全自動のランキング表」が作れます。

毎回ソートやコピーをしていた作業が、
たった1つの数式で リアルタイム更新

この記事では、その組み合わせテクニックを実例でわかりやすく解説します。


実現できること

この方法で、次のような自動表を作成できます👇

順位支店名売上
1東京200
2大阪180
3名古屋150
  • 元データが更新されると自動で順位が変動
  • 重複削除・並べ替え・連番付けも関数のみで実現
  • VBAもマクロも不要

ステップ①:元データを準備

A列(支店)B列(売上)
東京200
大阪180
名古屋150
東京100
大阪90

支店ごとの売上データが入力された表を用意します。
ここから「支店別の合計売上ランキング」を自動で作ります。


ステップ②:重複を除去(UNIQUE)

まずは重複のない支店リストを作成します。

=UNIQUE(A2:A6)

→ 結果:
東京
大阪
名古屋

この時点で「支店の一覧」を動的に生成できました。


ステップ③:支店ごとの合計を計算

次に、それぞれの支店の売上合計を求めます。
SUMIFを使ってUNIQUEのリストと連動させましょう。

=SUMIF(A2:A6, D2:D4, B2:B6)

D列(支店)E列(合計)
東京300
大阪270
名古屋150

→ UNIQUEで生成されたリストに対して自動で合計が紐づきます。


ステップ④:SORTでランキング順に並べ替え

次に、合計値を降順(大きい順)に並べ替えます。

=SORT(D2:E4, 2, -1)

支店合計
東京300
大阪270
名古屋150

→ 売上が高い順に並び替えられました。


ステップ⑤:SEQUENCEで順位を自動生成

最後に順位を自動で付けましょう。

=SEQUENCE(ROWS(F2:G4))

→ 1, 2, 3 … と自動で連番を出力。

これを組み合わせて最終表を完成させます👇

=HSTACK(SEQUENCE(ROWS(F2:G4)), SORT(D2:E4, 2, -1))

順位支店合計
1東京300
2大阪270
3名古屋150

完成!

  • UNIQUE:重複除去
  • SUMIF:合計計算
  • SORT:並び替え
  • SEQUENCE:自動順位付け

ステップ⑥:条件抽出を追加(FILTERとの連携)

特定の地域だけ抽出してランキングを作ることも可能です。

=HSTACK(
 SEQUENCE(ROWS(FILTER(A2:C100, A2:A100="東日本"))),
 SORT(FILTER(A2:C100, A2:A100="東日本"), 3, -1)
)

→ 「東日本エリアのみのランキング」を自動生成。

FILTERを使うことで、特定条件のランキングをリアルタイムで更新できます。


応用:動的リスト+連動ドロップダウン

さらに、UNIQUEで作ったリストを
ドロップダウンリスト(データ検証) に設定すれば、
選択した支店名で自動的に抽出・ランキングが変わる“連動型レポート”も構築可能です。

=FILTER(A2:C100, A2:A100=F1)

(F1に選択した支店名が入力されている状態)


実務での活用例

  • 支店・担当者別の 売上ランキング表
  • アンケート結果の 人気項目ランキング
  • 在庫やアクセス数の 上位・下位リスト自動化
  • 部署ごとの 最新成績一覧

Excelを「集計ツール」から「自動更新レポート」に変える第一歩です。


まとめ

  • UNIQUE:重複除去
  • SUMIF/FILTER:条件抽出・集計
  • SORT:並び替え
  • SEQUENCE:順位付け

この4つを組み合わせることで、
「元データが変わるたびに自動更新される動的ランキング表」が完成します。

VBAもマクロも不要。
関数だけでExcelをリアルタイム分析ツールに進化させましょう。

コメント