複数列で並べ替えたい場合
並べ替えたい基準となる列が複数ある場合は、ひとつずつ順番に並べ替えを実行していきます。つまり、最初に並べ替えたら、2つ目以降は、並べ替え結果に対して、さらに並べ替えを実行していくということです。
その際、「優先順位の低い順番」に並べ替えを実行するのが原則です。
例えば、今回のサンプル「商品売上リスト」で、まず「支店」を昇順に並べ替え、「支店」の内訳として「担当者」を昇順に、「担当者」の内訳として「日付」を古い順に、そして「日付」ごとに「売上金額」の高い順に並べ替えることを考えてみます。まとめる範囲が広いほど優先順位が高いので、ここでの優先順位は次のようになります。
優先順位の低い順番に並べ替えを実行するわけですから、「売上金額→日付→担当者→支店」の順番に、それぞれ並べ替えを実行します。
![]() |
並べ替えの順番 |
![]() |
並べ替えの結果 |
「並べ替え」ダイアログボックスを使う方法
複数列で並べ替える場合、「データ」メニュー→「並べ替え」をクリックして表示される「並べ替え」ダイアログボックスを使う方法もあります。
Excel2013での操作画面。範囲を選択し左クリックで「並び替え」から「ユーザー設定の並び替え」を選択するとダイアログボックスが開かれる
今回のように4つの列で並べ替えたい場合は、次のような手順で並べ替えます。
1.まず、優先順位の低い3つの列について並べ替える
(ダイアログボックス内での指定では、優先順位の高い順に指定)
Excel2013での操作画面。Excel2010以降は「レベルの追加」が3つ以上も可能になっている
2.Excel2007以前のバージョンのダイアログボックスでは一度に3つの列までしか指定できません。そのため最後に残った、優先順位の高い列(ここでは「支店」)について並べ替える
以上の手順で並べ替えを実行した結果が下図です。ダイアログボックスを使わない方法と同じ結果になっていますね。
クリックする回数を考えると、Excel2007以前では「並べ替え」ダイアログボックスを使わない方法の方が、手間がかからないし、わかりやすいのでオススメです。
並べ替えた順序を元に戻すには
並べ替える前のリストの順番が重要だったりすることもあるでしょう。「元に戻す」ボタンを使っても良いのですが、戻せる手順に限度があるので、あまりオススメできません。
そのようなときに役立つのが、「
Excelでリスト形式のデータを作る」で紹介した「通し番号」です。並べ替える前の状態は、通し番号の項目が「昇順の連番」になっているはずです。これを利用すれば、様々に並べ替えた後、通し番号で昇順に並べ替えることによって、並べ替える前の状態に戻すことができます。
![]() |
「No」の任意のセルを選択して「昇順で並べ替え」ボタンをクリック |
![]() |
元の状態に戻った |
もし、通し番号が用意されていなかった場合、臨時で通し番号をメモ的に採番しておくと、元に戻すときに利用できて便利です。
応用編!列(横方向)のデータを並べ替える
Excelの表を横の列ごとに並べ替えることも可能です。
「オプション」を選択し「列単位」に変更
「並べ替え」ダイアログボックスを開き、「オプション」を選択。「並べ替えオプション」で方向を「列単位」に設定し「OK」すると、並び変えが列単位に切り替わります。