SORT関数の使い方|Excelでデータを自動並び替えする方法

Excel
この記事は約7分で読めます。

はじめに

こんにちは。ヒイラギです。
Excelで「データを並び替えるたびにボタンを押すのが面倒…」と感じたことはありませんか?

実は、Excel SORT関数を使えば、データが更新されるたびに自動で並び替えが反映されます。ボタン操作は一切不要。しかも手動作業にありがちな抜け漏れや貼り付けミスといったヒューマンエラーもゼロになります。

私自身、学校事務の現場で学生名簿をクラス順・成績順など複数の並び順に整理する業務を担当していたとき、このSORT関数に出会いました。以前は非常勤職員2名が行をコピーして別のExcelファイルに貼り付けるという作業を1日がかりで行っていたのですが、SORT関数を使った仕組みを作ってからは、2人で丸1日かかっていた作業が作成時間を含めても約30分で完了するようになりました。

この記事では、Excel SORT関数の基本構文から実践的な活用例、よくあるエラーの対処法、さらにSORTBY関数との使い分けまで、実体験をもとに丁寧に解説します。

ヒイラギ
ヒイラギ

自動で更新されるから、ヒューマンエラーが減って作業がぐっと楽になるよ!


Excel SORT関数とは?基本をわかりやすく解説

Excel SORT関数は、指定した範囲のデータを、指定した列(または行)を基準に昇順・降順へ自動で並び替える関数です。Excel 365およびExcel 2019以降で使用できます。

従来の「並び替えボタン」との最大の違いは、元データが変わると並び替え結果もリアルタイムで自動更新される点です。一度数式を設定しておけば、データを追加・修正するたびにボタンを押す必要がありません。

SORT関数の構文

=SORT(範囲, 並び替え対象の列, 並び替え順, [並び替えの方法])
  • 範囲:並び替えたいデータ全体のセル範囲
  • 並び替え対象の列:基準にする列を左から何番目かで指定(例:1列目なら「1」)
  • 並び替え順:昇順は「1」、降順は「-1」
  • 並び替えの方法(省略可):行単位で並び替える場合はFALSE(省略時のデフォルト)、列単位で並び替える場合はTRUEを指定

SORT関数の基本の使い方(例)

A2:B10のデータをA列(1列目)の値で昇順に並び替える場合は、次のように記述します。

=SORT(A2:B10, 1, 1)

「1, 1」の最初の「1」が左から1列目(A列)を基準にするという意味、次の「1」が昇順を意味します。

ヒイラギ
ヒイラギ

「範囲」以外の引数は、数値やTRUE/FALSEで指定するからシンプルで覚えやすいよ。


Excel SORT関数の活用例4選【実務で使えるケース】

SORT関数はさまざまな業務シーンで活躍します。私が実際に使った場面も交えながら紹介します。

活用例1:名簿をクラス順・成績順に自動整列する

私が最初にSORT関数を使ったのは、学校事務での学生データ管理でした。同じ元データをクラス順・成績順・出席番号順など、複数の並び順で参照する必要があり、以前は非常勤職員2名が行をコピーして別ファイルに貼り付けるという作業を手動で行っていました。

SORT関数で並び替えシートを作成したことで、元データを年1回更新するだけで全ての並び順が自動反映されるようになりました。更新時はコピペだけで完結し、2人×1日の作業が約30分に短縮されています。

例えばA2:C100に「出席番号・氏名・成績」のデータがある場合、成績(3列目)で降順に並び替えるなら:

=SORT(A2:C100, 3, -1)

出席番号(1列目)で昇順に並び替えるなら:

=SORT(A2:C100, 1, 1)
ヒイラギ
ヒイラギ

「並び替え対象の列」をセル参照(例:E1セルに「3」と入力してSORT(A2:C100, E1, -1))にすれば、セルの数字を変えるだけで並び順を切り替えられるよ!

活用例2:売上データを昇順に並び替える

売上データをA2:B10に持っていて、売上金額(2列目)が低い順に並べたい場合:

=SORT(A2:B10, 2, 1)

売上が更新されるたびに自動で並び順が変わるため、毎月の集計レポート作成に特に役立ちます。

活用例3:売上ランキングを降順で自動作成する

売上金額が高い順にランキングを表示させたい場合は、並び替え順を「-1」(降順)に変えるだけです:

=SORT(A2:B10, 2, -1)

データが追加・変更されるたびにランキングが自動更新されるので、週次・月次レポートのダッシュボードにそのまま組み込めます。

活用例4:FILTER関数と組み合わせて条件付き並び替えをする

「売上が100,000円以上のデータだけを、売上の高い順に表示したい」という場合は、FILTER関数と組み合わせます:

=SORT(FILTER(A2:B10, B2:B10>=100000), 2, -1)

FILTER関数は、指定した条件に合うデータだけを抽出する関数です。SORT関数の「範囲」引数に別の関数を入れることもできるので、組み合わせ次第で活用の幅が大きく広がります。


SORT関数でよくあるエラーと対処法

SORT関数を使っていると、いくつかのエラーに遭遇することがあります。私が実際につまずいたケースをもとに解説します。

エラー1:#SPILL!(スピルエラー)

SORT関数は結果を複数セルに「スピル(自動展開)」して表示します。そのため、結果が出力されるはずのセル範囲に、すでに別のデータが入っているとエラーが発生します。

私が実際に経験したのも、まさにこのケースです。たとえば10行分のデータが吐き出される予定のところ、出力先の9行目に何らかのデータ(空白以外)が入っていてエラーが出ました。その9行目のデータを削除したら即座に解消されました。

対処法としては、SORT関数を入力するセルの下(および右)が十分に空いているか確認してから数式を入力するのが基本です。

エラー2:古いExcelバージョンでは使用不可

SORT関数はExcel 365 / Excel 2019以降でのみ使用可能です。それ以前のバージョン(Excel 2016など)では関数自体が存在しないため、エラーが出ます。共有ファイルを古いバージョンのExcelで開く同僚がいる場合は注意が必要です。

エラー3:他の関数と組み合わせたときの挙動

SORT関数を他の関数と組み合わせる際、引数の範囲がずれていたり、参照先が空になっていたりすると期待通りの結果が返ってこないことがあります。まずSORT単体で動作確認してから、段階的に組み合わせると原因の特定がしやすくなります。


SORT関数を使う際の注意点

  • 元データが変わると並び替えが自動更新される:これは便利な反面、並び替え結果を固定したい場合は「コピー→値貼り付け」で数式を外す必要があります。
  • Excel 365 / 2019以降でのみ利用可能:それ以前のバージョンでは使用できません。バージョンを確認してから使いましょう。
  • 並び替え基準列に同じ値が複数ある場合:同じ値が並んだときの順序は元データの並び順に依存します。さらに細かく制御したい場合はSORTBY関数の複数条件指定が有効です。
  • 出力先のセルを空けておく:スピル機能で結果が展開されるため、出力先のセル範囲に別データが入っていると#SPILL!エラーになります。

SORT関数とSORTBY関数の使い分け

SORT関数と混同されやすいのがSORTBY関数です。両者の違いをひと言で言うと、「並び替えの基準列を結果に含めるかどうか」で使い分けます。

具体例で比較:年齢順に並び替えたい場合

元データ(A列:名前、B列:性別、C列:年齢)があるとします:

A 男 33歳
B 女 26歳
C 女 32歳
D 男 18歳

SORTで年齢の高い順に並び替えると(=SORT(A2:C5, 3, -1)):

A 男 33歳
C 女 32歳
B 女 26歳
D 男 18歳

→ 名前・性別・年齢の3列すべてが出力される。

SORTBYで年齢の高い順に並び替えると(=SORTBY(A2:B5, C2:C5, -1)):

A 男
C 女
B 女
D 男

→ 名前・性別の2列のみが出力され、基準にした年齢列は表示されない。

どちらを使うべきか?判断基準

  • SORT関数:並び替えの基準列も含めて結果を出力したいとき。データを丸ごと並び替えて別シートに表示したい場合などに向いています。
  • SORTBY関数:並び替えの基準列は表示せず、必要な列だけを出力したいとき。誰かに見せる書類や提出用のリストを作るときに特に便利です。情報の取捨選択ができるため、個人情報(年齢・住所など)を見せたくない場面でも活用できます。
ヒイラギ
ヒイラギ

毎回データを差し替えて提出する書類を作るなら、情報を絞り込めるSORTBYの方が使い勝手がいいよ。関数を組み込んだテンプレートを作っておけば、データを貼り替えるだけで完成するから楽になるよ!


まとめ:Excel SORT関数で並び替え作業を自動化しよう

Excel SORT関数を使うと、データの並び替えが自動化され、手動操作の手間とヒューマンエラーを大幅に削減できます。私の実体験では、2人×1日かかっていた名簿整理が30分以内に短縮されました。

改めてSORT関数のポイントをまとめます:

  • 構文は =SORT(範囲, 基準列, 並び順, [方向]) とシンプル
  • 元データが更新されると並び替え結果も自動反映される
  • FILTER関数などと組み合わせることで活用の幅がさらに広がる
  • #SPILL!エラーは出力先のセルが空かどうかを確認すれば解消できる
  • 基準列を結果に含めたくない場合はSORTBY関数を使う

名簿管理・売上ランキング・顧客データの整理など、定期的に並び替えが発生する業務では特に効果を発揮します。パワークエリと組み合わせれば、番号管理しているデータの確認など、さらに多岐にわたる活用も可能です。

あなたはどんな場面でSORT関数を活用してみたいですか?ぜひコメントで教えてください!

基準列を出力に含めずに並び替えができる新関数・SORTBY関数についても解説しています。詳しくはこちらからチェックしてください。

コメント

タイトルとURLをコピーしました