スプレッドシートでデータを並べ替えるとき、元の並び順を変えずに表示だけ入れ替えたいと思ったことはありませんか。SORT関数を使えば、元データをそのままに、別の場所に動的に並べ替えた結果を表示できます。この記事では、SORT関数の基本的な使い方から応用例まで、実際の構文を交えてわかりやすく解説します。関数を使うのが初めての方でも、ステップに沿って操作すればすぐに使えるようになります。
【要点】SORT関数で元データを変更せずに並べ替え表示
- =SORT(範囲, 列番号, 昇順/降順): 基本的な構文で、指定した範囲を任意の列で並べ替えます。第3引数にTRUEを指定すると昇順、FALSEで降順になります。
- 複数キーによる並べ替え: 第4引数以降に列番号と順序を追加することで、第2キー、第3キーなどを指定できます。例えば、都道府県で昇順、さらにその中で売上で降順に並べ替えることが可能です。
- 動的な更新: 元データを変更すると、SORT関数の結果も自動的に更新されます。関数を使わないフィルタと異なり、毎回並べ替え操作をする必要がありません。
ADVERTISEMENT
目次
SORT関数の概要と動的並べ替えの仕組み
SORT関数は、指定した範囲のデータを並べ替えた結果を新しい範囲に出力する関数です。元のデータを直接変更せず、関数の結果だけが並び替わるため、元の並び順を保持したい場合に便利です。関数はセルに入力した瞬間に結果を返し、元データが更新されると自動的に再計算されます。これにより、手動で並べ替え直す手間が省けます。また、並べ替えの基準列を複数指定できるため、複雑な条件での並べ替えも一行の数式で実現できます。
SORT関数の基本的な使い方
それでは、実際にSORT関数を使ってみましょう。以下の手順で操作してください。
- 元データを準備する
スプレッドシートに並べ替えたいデータを入力します。例えば、A2セルからB10セルの範囲に商品名と売上データがあるとします。 - SORT関数を入力するセルを選ぶ
並べ替えた結果を表示したいセルをクリックします。元データのすぐ右や別のシートでも構いません。 - 関数を入力する
選択したセルに「=SORT(」と入力し、引数を指定します。例として、A2:B10の範囲を売上(2列目)の降順で並べ替える場合、「=SORT(A2:B10, 2, FALSE)」と入力します。第2引数は並べ替えの基準となる列番号、第3引数はTRUEで昇順、FALSEで降順です。 - Enterキーで結果を確認する
Enterキーを押すと、指定した範囲が売上の降順に並べ替えられて表示されます。元データのセルは変更されていません。
複数キーでの並べ替え
SORT関数では、複数の列を基準に並べ替えることもできます。第4引数以降にさらに列番号と順序を追加します。例えば、都道府県(1列目)で昇順、その中で売上(2列目)で降順にしたい場合は、「=SORT(A2:B10, 1, TRUE, 2, FALSE)」と入力します。これで、まず都道府県が昇順に並び、同じ都道府県内では売上が高い順に表示されます。
別シートのデータを並べ替える
元データが別のシートにある場合でも、範囲にシート名を含めて指定できます。例えば、「=SORT(Sheet1!A2:B10, 2, FALSE)」と入力すれば、Sheet1のデータを並べ替えた結果が現在のシートに表示されます。
SORT関数使用時の注意点とよくあるエラー
範囲外の列番号を指定するとエラーになる
SORT関数の第2引数(並べ替えの基準列)に範囲の列数を超える数値を指定すると、#REF!エラーが発生します。例えば、範囲がA2:B10(2列)の場合に列番号3を指定するとエラーです。列番号は範囲内の相対位置であることに注意してください。
空白セルやエラー値が含まれている場合
並べ替えの基準列に空白セルがあると、空白は最後に配置されます。また、エラー値(#N/Aなど)が含まれていると、並べ替えの順序が不安定になる可能性があります。事前にエラー値を修正するか、IFERROR関数などで対処してください。
元データに数式が含まれている場合
元データのセルに計算式が入っている場合、SORT関数はその計算結果を並べ替えます。ただし、元データが他の関数の結果を参照していると、循環参照やパフォーマンスの問題が起きることがあります。可能な限り値として貼り付けるなど、データを固定することを検討しましょう。
ADVERTISEMENT
SORT関数とSORTN関数の比較
SORTN関数はSORT関数の亜種で、上位N件を抽出しながら並べ替えます。両者の違いを表にまとめました。
| 項目 | SORT関数 | SORTN関数 |
|---|---|---|
| 出力される行数 | 範囲全体のすべての行 | 指定した件数の上位行のみ |
| 使い方の例 | 全データを並べ替えて表示 | 売上トップ3を抽出して表示 |
| 構文の違い | 最後に件数指定なし | 第2引数以降に表示件数が必要 |
SORTN関数の基本構文は「=SORTN(範囲, 表示件数, 並べ替え列, 昇順/降順)」です。例えば売上トップ3を表示するには「=SORTN(A2:B10, 3, 2, FALSE)」と入力します。大量のデータから上位だけを素早く確認したい場合に便利です。
SORT関数とフィルタビューの違い
スプレッドシートにはフィルタビューという機能もあります。SORT関数とフィルタビューの主な違いは、SORT関数が元データを変えずに別の場所に結果を出力するのに対し、フィルタビューは同じシート内で表示を一時的に変更する点です。フィルタビューは複数ユーザーが同時に作業する際に便利ですが、並べ替えの条件は動的ではありません。一方、SORT関数は元データの変更に連動して結果が更新されるため、定期的に更新されるデータのダッシュボードなどに適しています。
まとめ
SORT関数を使うことで、元データを壊さずに動的に並べ替えた結果を表示できます。基本構文はシンプルで、複数キーや別シートのデータにも対応可能です。また、SORTN関数と組み合わせれば、上位N件の抽出も容易になります。次に、QUERY関数とSORT関数を組み合わせて、さらに柔軟なデータ抽出に挑戦してみてください。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Googleスプレッドシートの人気記事ランキング
- 【Googleスプレッドシート】GOOGLEFINANCE関数で株価・為替を取得!リアルタイムデータの呼び出し
- 【Googleスプレッドシート】印刷範囲を指定して印刷!特定範囲だけPDFや紙に出す手順
- 【Googleスプレッドシート】複合グラフで棒と折れ線を同時表示!2軸グラフの作り方
- 【Googleスプレッドシート】FILTER関数で条件に合う行だけ抽出!数式1つで動的な絞り込み
- 【Googleスプレッドシート】フィルタ表示で他の人の表示を変えずに絞り込み!共有時の使い分け
- 【Googleスプレッドシート】重複データを抽出して表示!COUNTIFと条件付き書式の併用
- 【Googleスプレッドシート】新しいスプレッドシートを作成する3つの方法!ドライブ・URL・テンプレート
- 【Googleスプレッドシート】ARRAYFORMULAで列全体に数式を一括適用!セル分の入力を不要に
- 【Googleスプレッドシート】データ範囲を動的に伸縮させる!INDIRECTと参照範囲のコツ
- 【Googleスプレッドシート】共有解除と権限の取り消し!アクセスを完全に閉じる手順
