SORTBY関数:配列の内容を複数の列を基準に並び替える

広告

SORTBY 関数は Excel で用意されている関数の一つで、引数に指定した配列を複数の列を基準にして並び替えます。ここでは Excel における SORTBY 関数の使い方について解説します。

※ SORTBY 関数は Microsoft 365 で使用可能です。

(2021 年 10 月 07 日公開 / 2021 年 10 月 07 日更新)

SORTBY関数の使い方

SORTBY 関数は引数に指定した配列を複数の列を基準にして並び替えた配列を取得します。 SORT 関数とは異なり、 SORTBY 関数では行でのみ並び替えを行い、列では並び替えを行えません。

SORTBY(配列,基準配列1,並び替え順序1,基準配列2,並び替え順序2,...)

1 番目の引数に対象の配列やセル範囲を指定します。 2 番目の引数には並び替える 1 番目の基準の列を指定します。また 3 番目の引数には 1 番目の基準に対する並べ替え順序を指定します。 1 を指定すれば昇順となり -1 を指定すれば降順となります。

並び替える基準を複数設定する場合は 4 番目以降の引数で指定します。なお並び替え順序は省略することができないので、基準となる配列を指定した場合は必ずそれに対する並び替え順序の引数も指定してください。

例えば 2 つの基準を設定した場合、まず最初の基準で並び替えを行い、最初の基準で同じ値だった行に対して 2 番目の基準で並び替えを行います。例えば次のようなデータに対して最初の基準として 2 番目の引数に B3:B8 を指定すると次のように並び替えられた配列を取得します。

SORTBY関数の使い方(1)

デフォルトは昇順で並び替えを行いますが、それぞれの基準に対する並び替え順序の引数を指定することで、降順で並び替えることもできます。

SORTBY関数の使い方(2)

複数の基準を引数で指定すると、それまでの並び替えで行の値がまったく同じ値のものに対して次の基準を使った並び替えを行います。

SORTBY関数の使い方(3)

SORTBY関数の使い方(4)

SORTBY関数のサンプル

それでは実際に SORTBY 関数を使ってみます。 Excel のシートに対象の数値を次のように入力しました。

SORTBY関数のサンプル(1)

並び替えた配列を表示する B10 セルを選択し、次のように入力しました。 SORTBY 関数の 1 番目の引数に対象となるセル範囲の B3:D8 、 2 番目の引数に並び替える最初の基準となる B3:B8 、 3 番目の引数に最初の基準の並び替え順序である 1 、 4 番目の引数に並び替える次の基準となる D3:D8 、 5 番目の引数に次の基準の並び替え順序である -1 を指定します。

=SORTBY(B3:D8,B3:B8,1,D3:D8,-1)

SORTBY関数のサンプル(2)

Enter キーを押すと、 B10 セルには次のように表示されます。

SORTBY関数のサンプル(3)

対象のセル範囲の中で最初に B3:B8 のセル範囲の値をもとに並び替えを行い、そのあとで D3:D8 のセル範囲の値をもとに並び替えを行った配列を取得し表示しました。

関数の挿入を使ってSORTBY関数を入力する

SORTBY 関数を入力する場合に関数の挿入を使って行う方法を試してみます。関数を挿入するセルをクリックして選択したあとで、関数の挿入をクリックします。

関数の挿入を使ってSORTBY関数を入力する(1)

「関数の挿入」ダイアログが表示されたら関数名のところで「SORTBY」をクリックしてください。そのあとで「OK」をクリックしてください。

関数の挿入を使ってSORTBY関数を入力する(2)

「関数の引数」ダイアログが表示されたら、 1 番目の引数に対象のセル範囲を指定します。 1 番目の引数を入力するテキストボックスをクリックして選択してから引数に入力するセル範囲を Excel 上で選択して下さい。

関数の挿入を使ってSORTBY関数を入力する(3)

関数の挿入を使ってSORTBY関数を入力する(4)

ダイアログの 1 番目の引数のところに先ほど選択したセル範囲が表示されます。

関数の挿入を使ってSORTBY関数を入力する(5)

続いて 2 番目の引数に並べ替えの最初の基準となるセル範囲を選択します。 2 番目の引数を入力するテキストボックスをクリックして選択してから引数に入力するセル範囲を Excel 上で選択して下さい。

関数の挿入を使ってSORTBY関数を入力する(6)

関数の挿入を使ってSORTBY関数を入力する(7)

ダイアログの 2 番目の引数のところに先ほど選択したセル範囲が表示されます。

関数の挿入を使ってSORTBY関数を入力する(8)

続いて 3 番目の引数に並べ替えの最初の基準に対する並び替え順序を表す数値を指定します。 3 番目の引数を入力するテキストボックスに直接 -1 (降順)を入力しました。

関数の挿入を使ってSORTBY関数を入力する(9)

続いて 4 番目の引数に並べ替えの次の基準となるセル範囲を選択します。 4 番目の引数を入力するテキストボックスをクリックして選択してから引数に入力するセル範囲を Excel 上で選択して下さい。

関数の挿入を使ってSORTBY関数を入力する(10)

関数の挿入を使ってSORTBY関数を入力する(11)

ダイアログの 4 番目の引数のところに先ほど選択したセル範囲が表示されます。

関数の挿入を使ってSORTBY関数を入力する(12)

続いて 5 番目の引数に並べ替えの次の基準に対する並び替え順序を表す数値を指定します。 5 番目の引数を入力するテキストボックスに直接 1 (昇順)を入力しました。

関数の挿入を使ってSORTBY関数を入力する(13)

引数の指定が終わりましたら「OK」をクリックしてください。最初に選択したセルに SORTBY 関数が入力され、対象のセル範囲を並び替えたものを取得しセルに表示されます。

関数の挿入を使ってSORTBY関数を入力する(14)

-- --

Excel における SORTBY 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。