Excelでデータの並べ替えを行っていると、思い通りの順序にならず困ってしまうことがあります。
社員名簿を五十音順に並べ替えたはずなのに、「高野」が「関」より後ろに来てしまう、数字の「1、2、3」が「1、10、11、2、3」という変な順番になる、見出し行まで一緒に並び替えられてデータがぐちゃぐちゃになるといった問題に直面します。
特に顧客リストや在庫管理表など、定期的に並べ替えが必要な業務では、これらの問題が作業効率を大きく低下させます。毎回手作業で修正したり、並び順を諦めて使いにくい表のまま運用したりすることも少なくありません。
実はこれらの問題には、Excelのふりがな機能の仕様、データ形式の違い、範囲選択のミスなど、明確な原因があります。原因を理解せずに操作を繰り返しても、同じ問題が発生し続けてしまいます。
本記事では、Excelの昇順並べ替えで発生する「おかしい」現象の原因と、それぞれの具体的な対処法を詳しく解説します。
データ整理で困っている方は、ぜひ最後までお読みください。
ポイントは
・漢字の並び順がおかしいのはふりがなデータが間違っているため編集が必要
・数字が変な順番になるのは文字列形式で保存されているため数値に変換
・見出し行も動くのは「先頭行をデータの見出しとして使用する」設定を確認
です。
それでは詳しく見ていきましょう。
漢字の並び順がおかしい場合の対処法
それではまず、最も頻繁に発生する「漢字の五十音順がおかしい」問題の対処法を確認していきます。
ふりがな機能の仕組みと問題点
Excelで漢字を含むデータを昇順に並べ替えたとき、意図した五十音順にならない最大の原因は、Excelが保存している「ふりがな」データが正しくないことです。
Excel 2007以降には、漢字を入力した際のキーボードのタイピング内容を「ふりがな」として自動的に記録する機能があります。並べ替えを実行すると、このふりがなデータを基準に五十音順が決まります。
例えば、「高野」という名前を入力する際、「たかの」と入力して変換した場合は「たかの」というふりがなが記録されます。しかし、「こうの」と入力して変換した場合は「こうの」というふりがなが記録されてしまいます。
さらに問題なのは、「たか」と入力して「高」に変換し、「の」と入力して「野」に変換した場合、ふりがなは「たかの」として記録されます。一方、「安藤」を「やす」「ふじ」と分けて変換した場合は「やすふじ」という誤ったふりがなが記録されてしまいます。
このふりがなデータが誤っていると、見た目には五十音順のはずなのに、実際の並び順がおかしくなります。
ふりがなを表示して確認する方法
ふりがなが正しく記録されているか確認するには、「ふりがなの表示/非表示」機能を使ってふりがなを可視化します。
まず、確認したいセル範囲を選択します。次に「ホーム」タブの「フォント」グループにある「ふりがなの表示/非表示」ボタン(あ亜のアイコン)をクリックします。
するとセル内の漢字の上に小さくふりがなが表示されます。この表示されたふりがなが、Excelが並べ替えの基準として使用しているデータです。
ここで「高野(こうの)」のはずなのに「たかの」と表示されていたり、「安藤(あんどう)」のはずなのに「やすふじ」と表示されていたりする場合、それが並び順がおかしくなる原因です。
| 漢字 | 正しいふりがな | 誤って記録される例 | 原因 |
|---|---|---|---|
| 高野 | こうの | たかの | 「たかの」と入力して変換した |
| 安藤 | あんどう | やすふじ | 「やす」「ふじ」と分けて変換した |
| 東 | あずま | ひがし | 「ひがし」と読んで変換した |
| 中村 | なかむら | なかそん | 「なか」「そん」と分けて変換した |
ふりがなを編集する手順
誤ったふりがなを修正するには、「ふりがなの編集」機能を使用します。
修正したいセルを選択した状態で、「ホーム」タブの「ふりがなの表示/非表示」ボタンの右側にある下向き矢印をクリックします。表示されるメニューから「ふりがなの編集」を選択します。
するとセル内のふりがな部分が編集可能な状態になります。誤ったふりがなを削除し、正しいふりがなを入力し直します。編集が終わったらEnterキーを押して確定します。
複数のセルのふりがなを一括で編集したい場合は、該当するセル範囲を選択してから同様の操作を行います。ただし、一つずつ確認しながら修正する方が確実です。
ふりがなの編集が完了したら、改めて昇順で並べ替えを実行します。「データ」タブから「昇順」をクリックすれば、今度は正しい五十音順で並び替えられます。
| 操作手順 | 具体的な内容 |
|---|---|
| 1. セルを選択 | ふりがなを編集したいセルをクリック |
| 2. メニューを開く | ホームタブ→ふりがなの表示/非表示の▼をクリック |
| 3. 編集モードに | 「ふりがなの編集」を選択 |
| 4. 修正する | 誤ったふりがなを正しいふりがなに変更 |
| 5. 確定 | Enterキーを押して編集を完了 |
ふりがなを使わずに並べ替える方法
ふりがなの編集が面倒な場合や、そもそもふりがなデータが信頼できない場合は、別途ふりがな専用の列を作成して、その列を基準に並べ替える方法が確実です。
名簿を作成する際、A列に氏名(漢字)、B列にふりがな(ひらがなまたはカタカナ)という形で最初から別々の列として入力しておきます。
既存の漢字データからふりがな列を作成する場合は、PHONETIC関数を使用できます。B1セルに「=PHONETIC(A1)」と入力すれば、A1セルの漢字からふりがなを抽出できます。ただし、この関数も内部的に保存されているふりがなデータを参照するため、ふりがなが誤っている場合は結果も誤ります。
確実な方法は、手動でふりがな列に正しい読み仮名を入力することです。最初は手間がかかりますが、一度正確なふりがな列を作成しておけば、以後は何度でも正確な並べ替えができます。
並べ替えを実行する際は、氏名列ではなくふりがな列を基準に選択します。ふりがな列のいずれかのセルを選択した状態で「昇順」をクリックすれば、確実に五十音順で並び替えられます。
ふりがな機能は便利な反面、入力方法によって誤ったデータが記録されやすいという欠点があります。
特に他の人が入力したデータや、外部システムから取り込んだデータは、ふりがなが正しく記録されていない可能性が高くなります。
重要な名簿や顧客リストを管理する場合は、最初からふりがな専用の列を設けて、正確なデータを入力しておく方が、長期的には効率的です。
また、コピー&ペーストでデータを移動した場合、ふりがな情報も一緒にコピーされるため、元データのふりがなが誤っていれば、コピー先でも誤ったままになります。
数字の並び順がおかしい場合の対処法
続いて、数字を含むデータの並べ替えで発生する問題とその解決方法を確認していきます。
文字列として保存された数値の問題
「1、2、3、10、11」という順番で並べたいのに、昇順で並べ替えると「1、10、11、2、3」や「1、11、2、20、3」のように、10以上の数字が2や3より前に来てしまう問題があります。
これは数値が「文字列」として保存されているために発生します。文字列として扱われると、Excelは先頭の文字から順番に比較するため、「1」で始まる「10」や「11」が、「2」や「3」より前に並んでしまいます。
数値が文字列として保存される原因はいくつかあります。セルの表示形式が「文字列」に設定されている、数値の前にアポストロフィ(’)が付いている、外部システムから取り込んだデータが文字列形式だった、などです。
セルに入力されているデータが文字列か数値かを見分けるには、セル内での配置を確認します。数値として認識されている場合はセル内で右寄せに表示され、文字列の場合は左寄せに表示されます。
これは数値として扱うと先頭のゼロが消えてしまうためです。
このようなデータを並べ替える際は、文字列のまま並べ替えるか、別の方法を検討する必要があります。
文字列を数値に変換する方法
文字列として保存された数値を正しく並べ替えるには、データを数値形式に変換してから並べ替えを実行します。
最も簡単な方法は、「並べ替え」ダイアログボックスで「数値に見えるものはすべて数値として並べ替えを行う」オプションを使用することです。
並べ替えたい範囲を選択し、「データ」タブから「並べ替え」をクリックします。「並べ替え」ダイアログボックスが開いたら、「最優先されるキー」で並べ替えの基準となる列を選択し、「順序」で「昇順」を選びます。
ダイアログボックスの右上にある「オプション」ボタンをクリックすると、「並べ替えオプション」が開きます。ここで「数値に見えるものはすべて数値として並べ替えを行う」にチェックを入れて「OK」をクリックします。
元の「並べ替え」ダイアログに戻って「OK」をクリックすれば、文字列形式の数値も正しい数値順で並び替えられます。
| データ | 文字列として並べ替え | 数値として並べ替え |
|---|---|---|
| 1, 2, 3, 10, 11, 20 | 1, 10, 11, 2, 20, 3 | 1, 2, 3, 10, 11, 20 |
| 5, 50, 500, 5000 | 5, 50, 500, 5000 | 5, 50, 500, 5000 |
| 9, 90, 100, 900 | 100, 9, 90, 900 | 9, 90, 100, 900 |
セルの表示形式を数値に変更する方法
恒久的な対策として、セルの表示形式自体を数値に変更する方法もあります。
文字列形式のセルを選択し、「ホーム」タブの「数値」グループにある表示形式のドロップダウンから「数値」を選択します。ただし、この方法だけでは文字列が数値に変換されない場合があります。
確実に変換するには、隣の列に「=VALUE(A1)」という数式を入力し、文字列を数値に変換した結果を取得します。VALUE関数は文字列形式の数値を数値形式に変換する関数です。
変換後の数値をコピーして、元の列に「値として貼り付け」を行い、元の文字列データを数値データで上書きします。この方法なら確実に数値形式に変換できます。
| 変換方法 | 手順 | メリット |
|---|---|---|
| 並べ替えオプション | 並べ替え時に「数値として扱う」を選択 | 元データを変更せずに並べ替え可能 |
| VALUE関数 | =VALUE(A1)で変換して値貼り付け | 確実に数値形式に変換できる |
| 表示形式変更 | セルの書式設定で数値を選択 | 簡単だが変換されない場合がある |
漢字と数字が混在するデータの並べ替え
「世界の名著 第1巻」「世界の名著 第2巻」「世界の名著 第10巻」のように、漢字と数字が混在するデータは特に並び順がおかしくなりやすいです。
この場合、文字列全体として比較されるため、「第1巻」「第10巻」「第2巻」という順序になってしまいます。
対処法としては、補助列を作成して巻数だけを数値として抽出する方法があります。RIGHT関数やMID関数を使って「第○巻」の部分から数字だけを取り出し、VALUE関数で数値に変換します。
または、最初から「巻数」という列を別に設けて、そこに数値として「1」「2」「10」と入力しておき、この巻数列を基準に並べ替える方法が最も確実です。
数値を含むデータの並べ替えでは、そのデータが「数値」として認識されているか「文字列」として認識されているかが重要です。
データベースから出力したCSVファイルや、他のシステムから取り込んだデータは、文字列形式になっていることが多いため、並べ替えの前に必ずデータ形式を確認する習慣をつけましょう。
また、「001」のようにゼロ埋めが必要なデータと、通常の数値データが混在している場合は、並べ替えの基準を明確にして、適切な方法を選択することが重要です。
範囲選択とセル結合の問題
続いて、並べ替えの範囲指定やセルの状態に関する問題とその解決方法を確認していきます。
セル結合があるとエラーになる
並べ替えを実行しようとすると「この操作には、同じサイズのセル結合が必要です」というエラーメッセージが表示されることがあります。これは並べ替え範囲内にセルの結合が含まれているために発生します。
Excelの並べ替え機能は、各行のセル数が同じであることを前提としています。セル結合があると行ごとのセル数が異なってしまうため、エラーが発生します。
対処法は、セル結合を解除してから並べ替えを実行することです。並べ替えたい範囲全体を選択し、「ホーム」タブの「配置」グループにある「セルを結合して中央揃え」の右側の▼をクリックします。
表示されるメニューから「セル結合の解除」を選択すれば、すべてのセル結合が解除されます。解除後に並べ替えを実行すれば、正常に処理されます。
他のセルは空白になるため、並べ替え後に再度セル結合が必要な場合は、改めて結合し直す必要があります。
ただし、頻繁に並べ替えを行う表では、最初からセル結合を使わない設計にすることをおすすめします。
一部のセルだけが動いてしまう問題
並べ替えを実行したら、一部の列だけが並び替えられて、他の列はそのまま残ってしまい、データの対応関係がぐちゃぐちゃになる問題があります。
これは並べ替えの範囲選択が正しくない場合に発生します。例えば、A列からE列までのデータがあるのに、A列だけを選択して並べ替えを実行すると、A列だけが移動してしまいます。
正しく並べ替えるには、並べ替えたいデータの範囲全体を選択してから実行します。表の中のいずれか1つのセルを選択した状態で並べ替えを実行すれば、Excelが自動的に連続したデータ範囲を認識して全体を並べ替えてくれます。
ただし、表の途中に空白行や空白列があると、そこまでしか認識されないことがあります。その場合は手動で範囲を選択してから並べ替えを実行する必要があります。
| 問題 | 原因 | 対処法 |
|---|---|---|
| 一部の列だけ動く | 特定の列だけ選択している | 表全体を選択するか、1セルだけ選択 |
| 途中までしか動かない | 空白行・列で範囲が区切られる | 手動で範囲全体を選択 |
| 見出し行も動く | 先頭行の設定が間違っている | 「先頭行をデータの見出しとして使用」をチェック |
| 集計行も動く | 集計行が選択範囲に含まれている | 集計行を除外して範囲選択 |
見出し行も一緒に並べ替えられてしまう
データを並べ替えたら、「氏名」「年齢」「部署」といった見出し行まで一緒に並べ替えられてしまう問題があります。
通常、見出し行を太字にするなど書式を変えておけば、Excelが自動的に見出しと認識して並べ替えから除外してくれます。しかし、書式が統一されていたり、設定が正しくない場合は見出しも一緒に動いてしまいます。
確実に見出し行を除外するには、「並べ替え」ダイアログボックスを使用します。「データ」タブから「並べ替え」をクリックし、ダイアログボックスを開きます。
右上にある「先頭行をデータの見出しとして使用する」にチェックが入っているか確認します。チェックが入っていれば、先頭行は並べ替えの対象から除外されます。チェックが外れている場合はチェックを入れてから「OK」をクリックします。
また、見出し行を含まない範囲だけを選択してから並べ替えを実行する方法もあります。見出し行の下の行から最終行までを選択し、選択した範囲内で並べ替えを実行すれば、見出し行は動きません。
集計行や数式のあるセルの問題
表の最終行に合計や平均などの集計行がある場合、集計行も一緒に並べ替えられてしまい、数式の参照範囲がおかしくなる問題があります。
例えば、「=SUM(B2:B11)」という数式で10件のデータの合計を計算していた場合、並べ替え後に数式が「=SUM(B5:B14)」のように変化してしまうことがあります。
対処法は、集計行を並べ替えの範囲から除外することです。集計行の上までを選択して並べ替えを実行するか、集計行と データの間に空白行を1行入れておく方法が有効です。
空白行を入れておけば、Excelが自動的にそこまでをデータ範囲として認識するため、集計行が並べ替えに含まれることを防げます。また、集計行は表とは別の場所に配置する設計にすることも検討しましょう。
並べ替えでデータがぐちゃぐちゃになる最大の原因は、範囲選択のミスとセル結合です。
並べ替えを実行する前に、対象範囲が正しく選択されているか、セル結合が含まれていないか、見出し行や集計行が含まれていないかを確認する習慣をつけることが重要です。
また、並べ替えを頻繁に行う表では、元の順番に戻せるように、最初から連番の列を追加しておくことをおすすめします。
「No.」列に「1、2、3…」と連番を振っておけば、並べ替え後に元に戻したい場合は、No.列を昇順で並べ替えれば元の順序に戻せます。
まとめ エクセルの昇順がおかしい時の対処法
エクセルで昇順がおかしい時の対処法をまとめると
・漢字の五十音順がおかしい場合:ふりがなデータが誤っているため、「ホーム」→「ふりがなの表示/非表示」→「ふりがなの編集」で修正、またはふりがな専用列を作成して正確な読み仮名を入力
・数字の順番がバラバラの場合:文字列として保存されているため、「並べ替え」ダイアログの「オプション」→「数値に見えるものはすべて数値として並べ替えを行う」にチェック、またはVALUE関数で数値に変換
・セル結合でエラーが出る場合:「セルを結合して中央揃え」→「セル結合の解除」を実行してから並べ替え
・見出し行も動いてしまう場合:「データ」→「並べ替え」ダイアログで「先頭行をデータの見出しとして使用する」にチェックを入れる
これらの問題は、Excelのふりがな機能の仕様、データ形式の違い、範囲選択のミスによって発生します。
原因を正しく理解すれば、適切な対処法を選択できます。
特にふりがなの問題と文字列形式の数値は頻出するトラブルなので、並べ替えの前にデータ形式とふりがなを確認する習慣をつけましょう。
また、重要なデータを並べ替える前には、必ず元に戻せるように連番列を追加しておくか、ファイルのバックアップを取っておくことで、失敗しても安心です。
Excelの並べ替え機能を正しく使いこなして、効率的なデータ管理を実現していきましょう!