「SORT関数」と「SORTBY関数」の違いとは

SORT」と「SORTBY」は指定範囲/配列の値を並べ替える関数で、並べ替えの基準行または列が「SORT関数」は指定範囲/配列内にあり、「SORTBY関数」は指定範囲/配列内外で複数指定できます。

「SORT関数」は並べ替えの基準となる行または列が、指定範囲/配列に含まれており、先頭行または先頭列でない場合には、何行目または何列目を基準にするかを示す数値を指定することもできます。

一方の「SORTBY関数」は並べ替えの基準は数値ではなく、配列/範囲で指定しますが、その配列/範囲は並べ替える指定範囲/配列内でも外でも指定でき、さらに複数回の並び替えを実行することも可能です。

たとえば以下のような「コーヒー豆の生産量」の表があるとしましょう。

wd240327-01.png

この表を「(飲んだ)銘柄数」の多い順(D列を基準)で並べ替えるなら

SORT関数」だと「4」列(=D列)を基準にした式で

=SORT(A2:D6,4,-1)

SORTBY関数」だと「D2:D6」を基準にした式で

=SORTBY(A2:D6,D2:D6,-1)

となり、いずれも「A9」に入力すると同じ結果になります。

wd240327-02.png

「SORTBY関数」なら、最初に「地域」、次に「順位」、というように複数回の並び替えも可能です。

「A9」に

=SORTBY(A2:D6,C2:C6,-1,A2:A6,1)

と入力すると結果は以下のようになります。

wd240327-03.png

これで「南米」「アフリカ」「アジア」と「地域」ごとの順位が分かります。

 

「SORTBY関数」の構文は以下のようになります。

=SORTBY(array, by_array1, [sort_order1], [by_array2, sort_order2], ...)

[ ] で囲まれた引数は省略可能で、それぞれの役割は

  • array で並べ替えの対象となる配列または範囲を指定
  • by_array1 で並べ替えの基準となる配列または範囲を指定
  • [sort_order1] で「1」で「昇順」、「-1」で「降順」に指定
  • [by_array2] で並べ替えの基準となる配列または範囲を指定
  • [sort_order2] で「1」で「昇順」、「-1」で「降順」に指定
    ※ 参照:SORTBY 関数 - Microsoft サポート

となります。

ちなみに「SORT関数」の構文は

=SORT(array,[sort_index],[sort_order],[by_col])

であり「SORTBY関数」にはない [by_col] がありました。

つまり「SORTBY関数」は by_array1 で並べ替えの基準となる配列または範囲を指定することで基準が「行」か「列」か分かるので [by_col] は必要ない

ということです。

記事の情報は公開時あるいは更新時のもので、最新情報はリンク先など情報元の公式ページでご確認ください。

スポンサーリンク

ご意見&コメント

パソコン用語解説」をご利用いただき、ありがとうございます。

「参考になった」「ちょっと違うかも?」というときは TwitterFacebookページを使ってご感想やコメントをいただけると嬉しいです!励みにもなりますし、必要に応じて情報の追加や修正もしてまいります。

 

同じカテゴリー「エクセル(Excel)」の用語解説

 

同じカテゴリー「エクセル(Excel)」のQ&A

関連した記事を検索

パソコントラブルQ&A」「パソコン用語解説」では関連Q&Aや用語解説を豊富に掲載中です。検索してみてください!

五十音順」インデックス

別サイトで「パソコン用語集」も公開しています。

過去の用語解説 (732 件)

編集長のプロフィール

編集長

:パソコン生活応援アドバイザー。「なにしろパソコン.com」サイト運営、メルマガ編集、セミナー講師からコラム・書籍執筆まで実績豊富!

「パソコン用語解説」では厳密さよりも、分かりやすさ、覚えやすさを優先しています。そのため強引なたとえを使ったり、編集長独自の見解も交えておりますのでご了承ください。解説の中でパソコンの設定や操作法を紹介していますが、お使いのバージョンなど環境によって違う場合があります。

また、本サイトを参考にしたパソコン設定、サイト閲覧、紹介したソフトウエアや機器の購入&使用、そしてトラブル対応やインターネット活用は『利用者の責任』でお願いします(免責事項)。