Excelでデータを並べ替えるとき、多くの人は「データ」タブにある並べ替え機能を使っているでしょう。しかし、この方法は元のデータの順序を直接変更してしまいます。レポートを作成する際など、「元のデータはそのまま残しつつ、並べ替えた結果だけを別の場所に表示したい」というニーズは非常に多いです。
そんな要望に完璧に応えてくれるのが、Microsoft 365で利用できる動的配列関数SORT(ソート)です。たった一つの数式で、元の表を瞬時に並べ替え、結果を動的に表示させることができます。
今回のゴール:4月度売上表を「合計」の高い順に並べ替える
以下の「4月度売上表」を、E列の「合計」金額が大きい順(降順)に並べ替えた新しい表を、G列以降に作成することが目標です。
解決策:SORT関数の使い方
手順:G3 に SORT の式を入れて Enter
4月度売上表(A3:E6)を、合計の高い順に並べ替えて G3 から表示します。元の表は並べ替えません。 G3 に次の式を入力して、Enter キーを押します❶。
=SORT(A3:E6,5,-1) A3:E65-1青に「並べ替えたい表」、紫に「基準の列が左から何列目か」、オレンジに「-1(大きい順)か 1(小さい順)」を入れます。例:得点表 A2:C40 を、3 列目(点数)の高い順に
=SORT(A2:C40,3,-1) - Microsoft 365・Excel 2021 以降で使えます。結果が広がる先のセルに何か入っていると #SPILL! になります。

確認:合計の大きい桔梗店から順に並んだ

答えは 桔梗店(5,379)が先頭の表 になりました❷。式は、次の順に計算しています。
- 5 列目(合計)の値を比べる
⇒ 5,379・4,742・4,542・3,604 - 大きい順(-1)に、行ごと並べ替えて G3 から表示する
⇒ 桔梗店 → 朝顔店 → 紫陽花店 → あやめ店
▶ この式(E3)を、練習ツールで試す / この式(G3)を、練習ツールで試す / この式(E4)を、練習ツールで試す
まず動かしてみよう|この記事のサンプルをその場で試せます
練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。
サンプルデータ

以下は、上記画像のExcelデータですので、ダウンロードして練習として使用ください。
この機能を試すために、以下のサンプルデータをExcelシートにコピーしてください。
| A | B | C | D | E | |
| 1 | 4月度売上表 | (万円) | |||
| 2 | 店舗 | 衣料品 | 雑貨 | 食品 | 合計 |
| 3 | 朝顔店 | 868 | 1,951 | 1,923 | 4,742 |
| 4 | あやめ店 | 1,031 | 1,687 | 886 | 3,604 |
| 5 | 紫陽花店 | 1,236 | 1,806 | 1,500 | 4,542 |
| 6 | 桔梗店 | 1,738 | 1,586 | 2,055 | 5,379 |
数式の解説
SORT関数の構文は、3つの引数で構成されています(2つ目以降は省略可能)。
SORT(配列,[並べ替えインデックス],[順序])
今回は、基本的な3つの引数を見ていきましょう。
- 配列 (array):
A3:E6- 並べ替えたい元のデータ範囲全体を指定します。見出しを含まない、実際のデータ部分
A3:E6が対象です。
- 並べ替えたい元のデータ範囲全体を指定します。見出しを含まない、実際のデータ部分
- 並べ替えインデックス (sort_index):
5- どの列を基準に並べ替えるかを数値で指定します。引数1で指定した配列の左から何番目の列かを数えます。今回は5番目の「合計」列を基準にしたいので、「
5」と指定します。
- どの列を基準に並べ替えるかを数値で指定します。引数1で指定した配列の左から何番目の列かを数えます。今回は5番目の「合計」列を基準にしたいので、「
- 順序 (sort_order):
-1- どのように並べ替えるかを指定します。
1または省略:昇順(小さい順、A→Z)-1:降順(大きい順、Z→A)
- 今回は合計金額の「高い順」にしたいので、「
-1」(降順)を指定します。
- どのように並べ替えるかを指定します。
この数式は、「A3:E6の範囲を、5列目(合計)を基準に、降順(-1)で並べ替えてください」という命令を実行しているのです。
まとめ
SORT関数は、これまでのExcelの常識を覆す、非常にパワフルで便利な関数です。
- 非破壊的: 元のデータには一切影響を与えません。
- 動的: 元の表の数値が変更されると、並べ替え結果も自動で更新されます。
- シンプル: たった一つの数式で、複雑な並べ替えが完了します。
レポートやダッシュボード作成において、データを特定の順序で見せたい場面は数多くあります。SORT関数を使いこなして、より見やすく、より説得力のある資料を効率的に作成しましょう。
動的配列・スピル系の関数の全体像は、こちらのまとめで整理しています。

FILTER 関数の基本と、目的別の式の早見表はFILTER関数の使い方にまとめています。
SORT関数のよくある質問
エクセルのソート関数(SORT関数)で大きい順に並べ替えるには?
3つ目の引数(並べ替え順序)を -1 にします。=SORT(A3:E6,5,-1) は、売上表を5列目(合計)の大きい順に並べ替えて表示します。1 か省略で小さい順です。元の表は並べ替えません。
SORT関数が #SPILL! になるのはなぜ?
結果が広がる先のセルに何か入っていると、#SPILL! になります。SORT 関数は Microsoft 365・Excel 2021 以降で使えます。
