アフィリエイトリンクまたはスポンサーシップを通じて、ベンダーから収益を得る場合があります。これにより、サイト上の商品配置が影響を受ける可能性がありますが、レビューの内容には影響しません。詳細は利用規約をご覧ください。
並べ替えはMicrosoft Excelで最も簡単なタスクの一つです。クリックするだけで完了です!少なくとも、複数の列で並べ替える必要がある場合は、この操作は不要です。この並べ替えタスクには、カスタム並べ替えが必要です。手順は以下のとおりです。
昇順または降順で並べ替えるだけであれば、Microsoft Excel での並べ替えは簡単です。Excel はデータ範囲を解釈できるほどスマートです。しかし、すべての並べ替えが簡単というわけではありません。幸いなことに、Excel では、不規則な条件による並べ替えと複数の列による並べ替えの 2 種類のカスタム並べ替えを提供しています。最近の記事「Excel で通常の並べ替えがうまくいかない場合にカスタム並べ替えを作成する方法」では、月曜日、火曜日など、または小、中、大などの並べ替え要素の独自のリストを作成する方法を説明しました。この記事では、複数の列で並べ替える方法を説明します。たとえば、売上シートを人員、次に地域で並べ替えるとします。最終的な結果は、人員をグループ化し、さらに各グループを地域ごとにグループ化します。
参照: すべてのユーザーが習得すべき Excel のヒント (TechRepublic)
カスタム並べ替えを開始するには、次の 2 つの方法があります。
- [ホーム] タブの [編集] グループで [並べ替え] をクリックし、[ユーザー設定の並べ替え] をクリックします。
- [データ] タブで、[並べ替えとフィルター] グループの [並べ替え] をクリックします。
記事全体ではお好みに応じてご使用ください。
Windows 10 64ビットシステムでMicrosoft 365を使用していますが、以前のバージョンでもご利用いただけます。ご参考までに、デモ用の.xlsxファイルと.xlsファイルをダウンロードしていただけます。Excel Onlineは複数列での並べ替えをサポートしています。
2つの列で並べ替える方法
グループ化はデータベースでよく使われるタスクであり、複数の列による並べ替えも基本的に同じです。特定の列を基準としたプライマリソートを行い、その結果に基づいてセカンダリソートを行います。列は2つに限定されませんが、ここでは例をシンプルに説明します。
図Aは、複数の従業員と各レコードの地域に関する売上データからなるシンプルなデータセットを示しています。従業員ごとの合計コミッションを地域別に確認したいとします。この要件では、複数の列で並べ替えを行う必要があります。主要な並べ替えは「従業員」列で行い、二次的な並べ替えは「地域」列で行うことになります。
図A

人事または地域で並べ替えることはできますが、並べ替えオプションのみを使用して両方で並べ替えることはできません。この場合、次のようにカスタム並べ替えを作成する必要があります。
- データ セット内の任意の場所 (人事列内が望ましいですが、必ずしもクリックする必要はありません) をクリックします。
- [ホーム] タブの [編集] グループで、[並べ替えとフィルター] オプションをクリックし、ドロップダウン リストから [ユーザー設定の並べ替え] を選択します。
- 「Personnel」列内をクリックした場合、結果ダイアログの最初の「並べ替え基準」設定は「Personnel」になっているはずです。そうでない場合は、「Personnel」を選択してください。「並べ替えの基準」と「順序」オプションは、それぞれ「セルの値」と「AからZ」に設定されています。これらはデフォルト設定です。必要に応じて変更してください。
- この時点で、プライマリソートは完了です。セカンダリソートを作成するには、「レベルの追加」オプションをクリックします。
- 「次の基準」ドロップダウンから「地域」を選択します。ここでも、「並べ替えの基準」と「順序」列はデフォルトの「セルの値」と「AからZ」に設定してください(図A)。
- これで両方の並べ替え列が設定されたので、[OK] をクリックして並べ替えを実行します。
図Bに示すように、Excelは人事列の名前をアルファベット順で昇順にグループ化しています。次に、各名前グループ内で地域を並べ替えます。Jamesには、Central NorthwestとSouthwestの3つの地域があります。次に、MarthaとRosaにドロップダウンします。彼らの地域グループは、NorthwestとSouthwestと同じです。
図B
このソートは比較的簡単でした。列は2つだけで、それらは連続しています。2つ目の例で、要件を少し複雑にしてみましょう。
Excelで並べ替えに3番目の列を追加する方法
日付の重複はほとんどありませんが、月はいくつかあります。日付、人員、地域の3つの列に新しいカスタム並べ替えを作成しましょう。そのためには、まず月を返す補助列を追加する必要があります。そのためには、日付と値の間に列を挿入し、C3に次の関数を入力して、残りのセルにコピーします。
=月(B3)
=Month([@Date]) (Table オブジェクトを使用している場合)
次に、表示形式を「標準」に設定します。そうすることで、月を表す値が表示されます。例えば、1は1月、4は4月、10は10月などです。それでは、新しいカスタム並べ替えを設定してみましょう。
- データ セット内の任意の場所 (日付列内が望ましいですが、これは必須ではありません) をクリックします。
- [ホーム] タブの [編集] グループで、[並べ替えとフィルター] オプションをクリックし、ドロップダウン リストから [ユーザー設定の並べ替え] を選択します。
- 日付列内をクリックした場合、結果ダイアログの最初の「並べ替え基準」設定は「日付」になっているはずです。もし「日付」を選択していなかった場合、ここで「日付」を選択してください。「並べ替えの基準」と「順序」オプションはそれぞれ「セルの値」と「古い順から新しい順」に設定されているはずです。必要に応じて変更してください。
- この時点で、プライマリソートは完了です。セカンダリソートを作成するには、「レベルの追加」オプションをクリックします。
- 「次の基準」ドロップダウンから「人事」を選択します。ここでも、「並べ替えの基準」と「順序」列はデフォルトの「セルの値」と「AからZ」に設定してください。
- 「レベルの追加」をクリックし、「次の基準」ドロップダウンから「地域」を選択し (図 C )、「OK」をクリックして並べ替えを実行します。
図C
図Dに示すように、1月31日が最初の日付グループです。1月に売上があるのはJamesだけですが、売上は2つあり、地域はアルファベット順にソートされています。LukeとMarthaは2月28日のグループに分類されており、どちらも北西部という地域に属しています。
図D
データセットは意図的にシンプルに設計されているため、複数の列で並べ替えを行った結果、異なるグループを簡単に識別できます。各グループには、新しい並べ替えレベルを追加するだけです。
こちらもご覧ください
- Microsoft 365 の予測テキスト機能を使用してミスを減らし、効率的に作業する方法
- Microsoft Wordのさまざまなテキスト折り返しオプションの使い方
- Windows 11 チートシート: 知っておくべきことすべて
- Zoom vs. Microsoft Teams、Google Meet、Cisco WebEx、Skype:自分に合ったビデオ会議アプリの選び方(無料PDF)
- チェックリスト: Windows 10 システムのセキュリティ保護
- マイクロソフトの必読記事