
今回の記事では
日付の並べ替えって関数を使って出来ないの?
日付が上手く並べ変わらない時もあるから対処方も合わせて知りたい
日付と合わせて他の項目も関数を使って並べ替えできないの?
できれば、なるべく簡単な方法だと助かるけどそんな方法ってある?
こういった疑問に答えます
✔関数を使った並べ替えの方法のテーマ
①SORT関数を使えば日付の並べ替えを関数でやることが出来ます
②SORTBY 関数を使えば複数条件での並べ替えを関数で実現可能
この記事を書いているのはOfficeを約20年間活用しながら
ITを活用したエステの経営マネジメントしている私の経験を基に
「関数を使った並べ替えの方法のテーマ」に関して実体験に基づいて解説しています
今回の内容を一緒にやりたい場合は▼のファイルをダウンロードして下さい
目次を使って読みたい項目へ
SORT関数を使えば日付の並べ替えを関数でやることが出来ます
SORT関数を使えば日付の並べ替えを簡単にすることが出来ます
なぜなら、SORT関数は並べ替えに特化した関数だからです
それではSORT関数を使った日付の並べ替え方法について解説していきます
ただし、SORT関数はExcel2020以降のOffice製品でしか使えない点に注意して下さい
SORT関数に関する基本的な使い方などについては「Excelのスピルなら関数をより便利に」という記事で紹介してるので参考にしてみて下さい

結果から見てみましょう
こんな風に左側のバラバラになっている日付が右の表では降順(日付が新しい順)で整理されて表示されます
では、具体的な関数の設定方法について解説していきます

「D5のセル」を選択した状態で「数式タブ」をクリック
「関数ライブラリ」グループにある「検索/行列」ボタンをクリック
「SORT」をクリック

配列には左側の表の全てである「A5~B19のセル範囲」を選択

並べ替えインデックスは「何列目」を対象に並べ替えたいのかを指定します
今回は1列目の日付を並べ変えたいので「1」を入力

並べ替えの順序は「降順」を表す「-1」を入力

「OK」ボタンをクリック

その結果、ちゃんと日付を降順に並べ替えられた一覧表が作成されました
SORT関数はスピル機能を前提に作られた関数です
スピル機能を使っているので「D5のセル」1つに設定するだけで全ての結果が自動で表示されます
簡単なのに便利な機能なのでこの方法で日付を並べ替えた一覧表を作ってみましょう
日付のようで日付じゃない上手く並べ変わらない原因
日付を並べ替えているのにちゃんと並べ変わらないことがあります
その主な原因は、日付に見えて日付じゃないということです

個のケースでは右側のの並びがおかしいですよね
その原因はセルに入力されている内容が「日付ではなく文字列」になっていることです
よ~~~~く見ると分かるのですが、9月~3月まで(上の方の)に入力されている内容は全て「左寄せ」になっていますよね
コレは、日付ではなく文字列として扱われているので文字列の日付順と、本当の日付の並べ替えが起こっているのでなんだかおかしな並びになっています
日付は本来「シリアル値」と呼ばれる連続した数字で管理されているので「文字列と数字」では扱いが違うためにこんな風になんだか分からない結果になっているという訳です

一番手っ取り早く日付かどうか判断するには、「A5~A19の範囲のセル」を選択
「表示形式」から「標準」を選択

結果を見ると一目瞭然ですよね
普通、日付は標準に設定するとシリアル番号つまり、連続した数字になるはずです
ところが文字列の場合は日付の表示のままです
これを手動で日付に戻すには手間が掛かるのでちょっと工夫してみましょう

こんな風に「DATEVALUE関数」を使えば文字列を日付に変更してくれます
コレでもエラーが表示されてしまうのでもうひと工夫してみましょう

もうひと工夫して「IFERROR関数」を使うことでエラー対策をします
これで全てシリアル値に変更出来たのでA列にコピペすれば全て日付に変更出来ます
またSORT関数は、変更を感知した瞬間に並べ替えを自動的にやってくれるのですごく簡単に並べ替えができちゃいます
面白いと思ったらチャレンジしてみましょう
やって見るとすごく簡単なので楽しく学べちゃいます
繰り返しになりますが、SORT関数を使えば日付の並べ替えを簡単にすることが出来ます
SORTBY 関数を使えば複数条件での並べ替えを関数で実現可能
SORTBY(ソート・バイ)関数を使えば複数条件での並べ替えを実現することができます
なぜなら、SORTBY機能は複数の条件で並べ替え出来る関数だからです
それでは実際にSORTBY関数の使い方について解説していきます

まず、これが並べ替えた結果です
並べ替えの条件は次の通りです
①日付は降順で並べ替える
②キャンプ場の名前を昇順で並べ替える
以上です

D5のセルをクリックした状態で「数式タブ」から「SORTBY関数」をクリック

配列に元の表全てを選択する

「基準配列1」に1番目に並べ替えたい範囲(日付の範囲)を選択

「日付を降順」で並べ替えたいので「並べ替え基準1」に「-1」を入力

「基準配列2」にキャンプ場の範囲を設定

並べ替えの設定は「昇順」にしたいので「並べ替え順序2」に「1」を設定して「OK」ボタンをクリック

これで「日付を降順で並べ替え」て「キャンプ場名を昇順で並べ替え」をすることが出来ました
こんな風に複数の条件でも関数を使って並べ替えることが出来るので、原本を残したまま並べ替え結果を確認したい時には活用してみましょう

最後のおまけですが、同じことをSORT関数をネストすることでも同じことが出来ます
「=SORT(SORT(A5:B19,1,-1),2,1)」というやり方もあるので好きな方で試してみて下さい
繰り返しなりますが、SORTBY(ソート・バイ)関数を使えば複数条件での並べ替えを実現することができます
コメントを残す