SORTBY関数は、指定したデータの範囲内で複数のデータを基準に並べ替えすることができる関数です。第1基準に名前を昇順で、第2基準に年齢を降順でといった柔軟な並べ替えを簡単に行うことができます。

ソリューション最終更新日: 20201208

エクセル SORTBY関数で基準を複数指定して並べ替える

  • このエントリーをはてなブックマークに追加

SORTBY関数は、指定したデータの範囲内で複数のデータを基準に並べ替えすることができる関数です。第1基準に名前を昇順で、第2基準に年齢を降順でといった柔軟な並べ替えを簡単に行うことができます。
※この関数はOffice 365で使用可能です。Office2013・2019および以前のバージョンのOfficeでは表示されませんのでご注意ください。
書式(基本構文)
SORTBY(配列,基準配列1,並べ替え順序1,基準配列2,並べ替え順序2,…)
記述例

=SORTBY(A2:F10,C2:C10,1,F2:F10,-1,…)

1.データの抽出結果を表示させたいセルを選択する

ここでは「氏名/年齢/性別/血液型」のデータについて、年齢(降順)、血液型(昇順)で並べ替えていきます。並べ替えデータを表示させたいセルを選択します(ここではF5)。

2.[fx]ボタンをクリックして関数の挿入ダイアログボックスを表示

選択したセルに関数を挿入します。数式バー左にある「fx」ボタンをクリックして「関数の挿入」ダイアログボックスを表示します。

3.SORTBY関数を検索して選択する

「関数の検索」窓内に「sortby」と入力して[検索開始]をクリックします。「関数名」窓の検索結果にSORTBYが表示されたら選択し、[OK]をクリックします。

4.並べ替えたいデータ範囲を選択する

ここでは名前から血液型まですべてを並べ替えの対象としたいため、「A5:D24」を配列として選択します。

5.最初の基準にする配列を選択する

最初に並べ替えの基準にしたい配列を選択します。今回は年齢を第1基準としたいため、「B5:B24」を選択します。

6.最初の基準の並べ替えの順序を指定する

選択した配列の並べ替え順序を数値で指定します。
1:昇順
-1:降順
ここでは年齢が上の順から並べ替えるため、「-1」(降順)を入力します。

7.2番目の基準にする配列を選択する

続いて2番目に基準としたい項目を選択します。ここでは血液型を基準にするため「D5:D24」を選択します。

8.2番目の基準の並べ替えの順序を指定する

2番目の基準(血液型)の並べ替え順序を指定します。ここでは「1」(昇順)を指定しました。

基準の配列選択、順序指定が完了したら[OK]をクリックすると、選択したセルからSORTBY関数で並べ替えした結果がスピルされて複数行列にわたって表示されます。
※スピル—表示しようとするデータが複数のセルにまたがる場合に、隣接するセルに値をこぼれ(=spill)させて表示される機能です。

データの変更や増減にも特別な対応は不要

SORTBY関数でデータを並べ替えるメリットは、元データの内容に変更があった場合や、あとからデータを追加する場合でも、関数が自動的に処理してくれるため特別な対応が不要である点です。

頻繁にデータを追加する必要がある場合は、データ範囲をテーブル化しておくといいでしょう。[挿入]タブ→[テーブル]をクリックしてテーブル化します。

テーブル化されると、テーブル名が付与されるので「テーブルデザイン」タブをクリックしてテーブル名を必ず確認しておきましょう。

SORTBY関数を挿入したセルを選択して[fx]ボタンをクリックし、配列の項目にテーブル名(ここでは「テーブル1」)を入力しておきます。

データ範囲をテーブル化しておくことで、テーブル内のデータが増減しても自動的にSORTBY関数で並べ替えたデータに変更が反映されます。

ライタープロフィール パソコン工房NEXMAG [ネクスマグ] 編集部

パソコンでできるこんなことやあんなこと、便利な使い方など、様々なパソコン活用方法が「わかる!」「みつかる!」記事を書いています。

記事を
シェア