SORTBY関数 – 検索/行列

SORTBY関数 – 指定した別の配列を基準にデータを並べ替える関数


1. 使い方と活用例

SORTBY関数は、ある配列や範囲のデータを、別の配列や列を基準にして動的に並べ替えることができる関数です。
並べ替えたい配列と、ソートの基準となる配列を分けて指定できるため、柔軟な並べ替え処理が可能です。

2. 基本の書式

=SORTBY(配列, 並べ替え基準1, 並べ替え順序1, [並べ替え基準2, 並べ替え順序2], ...)

3. 引数の説明

  • 配列 – 並べ替え対象のセル範囲や配列。
  • 並べ替え基準 – 並べ替えの順序を決める基準となる別の配列や列を指定します。
  • 並べ替え順序 – 昇順(1)または降順(−1)を指定します。

4. 使用シーン

  • 別の列(たとえば売上金額や日付)を基準にデータを並べ替えたいとき
  • 複数の列の優先順位でデータをソートしたいとき
  • FILTERやUNIQUEなどの関数と組み合わせて、抽出結果をソートしたいとき

5. 応用のポイント

SORTBY関数は、並べ替え対象とソート基準を分けて指定できるため、通常のSORT関数よりも柔軟に使えます。
複数の並べ替え基準を指定すれば、第1基準、第2基準…と段階的なソートも可能です。
配列数式として自動でスピル展開されるので、並べ替えた結果が別の範囲にリアルタイムで表示されます。

6. 具体例とその解説

=SORTBY(A2:C10, C2:C10, -1)

A2:C10のデータを、C列の値を基準に降順で並べ替えます(たとえば「得点が高い順」など)。

=SORTBY(A2:C10, B2:B10, 1, C2:C10, -1)

まずB列を昇順、次にC列を降順で並べ替える例です。複数基準の並べ替えが可能です。

=SORTBY(FILTER(A2:B10, B2:B10>=70), B2:B10, -1)

FILTERで70点以上のデータを抽出し、それをB列(点数)を基準に降順でソートします。

7. 関連関数の紹介

  • SORT関数 – 同じ配列内の列を基準に並べ替える関数
  • FILTER関数 – 条件に一致するデータを抽出する関数
  • UNIQUE関数 – 重複を取り除いて一意な値を取得する関数
  • INDEX関数 – 指定した行列番号のデータを抽出する関数

8. まとめ

SORTBY関数は、並べ替え対象とは別の列・配列を基準に指定できるため、動的で柔軟な並べ替え処理が可能です。
複数条件のソートや、関数と組み合わせたフィルタ処理にも相性がよく、効率的なデータ整理ができます。

9. 対応バージョン

SORTBY関数は、Excel 365 および Excel 2021以降のバージョンで使用可能です。
それ以前のバージョンでは使用できません。