エクセルで並び替えがぐちゃぐちゃになる5つの原因と直し方|行ズレ・男女順・計算式

エクセルで並び替えがぐちゃぐちゃになる5つの原因と直し方|行ズレ・男女順・計算式

エクセルの「並び替え」ボタンを押した瞬間、表のデータがぐちゃぐちゃになって冷や汗をかいた経験はありませんか?

氏名と住所の行がズレてしまった!

あいうえお順に並ばない!

1, 2, 3...ではなく、1, 10, 11...という順序になってしまう。

一見バグのように見えるこれらの現象ですが、実はエクセルの「データの持ち方」や「範囲選択」に明確な原因があります。この記事では、エクセルの並び替えがおかしくなる代表的な5つの原因と、それぞれの直し方を図解でわかりやすく解説します。

 

【緊急】もしデータがズレて壊れてしまった場合は、何もせずすぐに「Ctrl + Z(元に戻す)」を押してください! まだ上書き保存していなければ、元の状態に戻せます。

 

まずは症状チェック:あなたの「ぐちゃぐちゃ」はどのタイプ?

今のあなたのトラブルに近いものをクリックして、解決策へジャンプしてください。

  • データが壊れた!(隣の列とデータがズレてしまった・行ズレ)→【原因1】
  • 漢字の順番がおかしい!(あいうえお順にならない・男女が混ざる)→【原因2】
  • 数字の順番がおかしい!(1, 10, 11, 2... のようになる)→【原因3】
  • 計算結果が変わった!(#REF!エラーが出る・数値がおかしい)→【原因4】
  • エラーで動かない!(「同じサイズの結合セルが必要です」と出る)→【原因5】

 

【緊急】並び替えでデータが壊れた時の戻し方

並び替えに失敗して、行がズレたり、データがおかしくなったりしても、まだファイルを閉じずに開いているなら、すぐに元に戻せます。

 

焦って適当な場所をクリックして修正しようとせず、まずは以下の方法を試してください。

 

まずは「Ctrl + Z」で元に戻す

一番確実で早い方法は、キーボードのショートカットキーを使うことです。これは「直前の操作を取り消す」という機能です。

Windowsの方 キーボードの [Ctrl] キーを押しながら [Z] キーを押す
Macの方 キーボードの [Command] キーを押しながら [Z] キーを押す

これを1回押すと「ひとつ前の状態」に戻ります。もし1回で戻らない場合(並び替えの後に別のセルを触ってしまった場合など)は、正常な状態に戻るまで、何度か繰り返し押してみてください。

 

画面左上にある「左向きの矢印マーク(元に戻す)」をクリックすることでも同じ操作が可能です。

 

保存してしまった後の対処法

 

「無意識に 【Ctrl + S】(上書き保存)を押してしまった!」

 

「保存してファイルを閉じてしまった…」

 

このように、変更を確定させてしまった場合でも、「バージョン履歴」機能を使えば復元できる可能性があります。

 

エクセルの「バージョン履歴」を確認する(推奨)

OneDriveやSharePointなどのクラウド上に保存している場合、または自動保存がオンになっている場合は、以下の手順で過去の状態に戻せます。

  1. エクセル画面上部の [ファイル] タブをクリックします。
  2. メニューから [情報] を選びます。
  3. [バージョン履歴] というボタンをクリックします。
  4. 画面右側に過去の保存日時が一覧で表示されるので、「並び替えを行う前の時間」のデータをクリックして復元します。

 

ローカル環境(PC本体)に保存している場合

クラウドを使っていない場合、復旧は難しくなりますが、Windowsの機能でバックアップが残っているか確認しましょう。

  1. エクセルファイルを閉じます。
  2. ファイルのアイコンを [右クリック] して [プロパティ] を選びます。
  3. [以前のバージョン] タブをクリックします。
  4. もしここに古い日付のファイルが表示されていれば、それを選択して [復元] できます。

※ここに何も表示されない場合は、残念ながら自動バックアップが残っていません。手動でデータを修正する必要があります。

 

原因1:範囲選択ミス(行ズレ・データ崩壊)

 

「並び替えをしたら、Aさんの住所がBさんのものになってしまった…」

 

「商品名と価格の組み合わせがデタラメになってしまった」

 

これは、並び替えにおける最も致命的なトラブルです。特定の列だけが動き、隣の列が置いてきぼりになったことで、横のデータの繋がり(紐付き)が壊れてしまった状態です。

 

1列だけ選んで並び替えていませんか?

原因はシンプルです。「並び替えたい列だけ」を選択して実行してしまったからです。

 

例えば、「氏名」の順に並べたいときに、氏名の列(A列)だけをマウスでドラッグして選んでいませんでしたか?

 

エクセルは基本的に、「選択された範囲の中だけ」で処理を行おうとします。そのため、A列だけを選んで並び替えを実行すると、隣のB列(住所)やC列(電話番号)は一切動かず、A列の中身だけが順番移動してしまうのです。

※通常、エクセルは気を利かせて「選択範囲を拡張しますか?」という警告メッセージを出しますが、これを「現在選択されている範囲を並び替える」にして進めてしまうと、この事故が起きます。

 

表全体を選択するか「オートフィルター」を使うのが鉄則

この「行ズレ」を防ぐためのルールはたった1つ。
「並び替えボタンを押す前に、表のデータ全体を選ぶこと」です。

 

しかし、毎回マウスで表全体を選ぶのは面倒ですし、選択漏れのリスクもあります。そこで、最も安全で確実な「フィルター機能」を使う方法をおすすめします。

 

失敗しない「フィルター」の使い方
  1. 表の見出し行(「氏名」「住所」などの行)のどこかをクリックします。
  2. [データ] タブにある [フィルター] ボタン(漏斗のマーク)をクリックします。
  3. 見出しの右端に「▼(下三角)」のボタンがつきます。
  4. 並び替えたい項目の「▼」をクリックし、[昇順] または [降順] を選びます。

 

この「フィルター機能」を使えば、エクセルが自動的に「この表はここからここまでが一塊だ」と認識してくれます。必ず行全体がセットで動くようになるため、データがズレることはありません。

ショートカットキー:Ctrl + Shift + L で一発でフィルターがつきます。

 

原因2:ふりがな情報の不一致(漢字の順序がおかしい)

エクセルで名簿を性別順で並び変えたのに、男→女→男のようにぐちゃぐちゃになってしまう理由と回避策を説明します。

 

エクセルは「漢字」ではなく「ふりがな」で並び替えている

エクセルの並べ替えは初期設定だとフリガナ情報を使って行われるので、同じ文字でもフリガナ情報がある文字とない文字は別文字として扱われます。このため男→女→男のように一見するとぐちゃぐちゃな順になります。

フリガナのある「男」とフリガナのない「男」は別の文字として扱われます。

 

エクセルでフリガナがつくケースとつかないケース

エクセルの中で「おとこ」と文字入力してから、漢字変換した文字「男」には、エクセルでフリガナ情報が設定されますが、メールなどエクセル以外のところから「男」という文字をコピーして貼りつけたときは、この情報が設定されません。

 

これがフリガナありフリガナなしにわかれる理由です。

 

フリガナありの文字をエクセルでコピーしてエクセルに貼りつければ、フリガナありとなりますし、フリガナなしの文字をエクセルでコピーしてエクセルに貼りつければ、フリガナなしとなります。

 

PHONETIC関数で「裏側のふりがな」を確認する

上に例示したデータをPHONETIC関数を使ってフリガナを表示させるとこうなります。

「=PHONETIC(セル値)」でセル値のフリガナを表示する

表示させたふりがなが「オトコ」となっている「男」とふりがなも「男」の「男」があります。
このちがいにより、並べ替えたときに同じ「男」という字なのにわかれてしまう訳です。

ふりがなが漢字の「男」となっているのは、フリガナ情報が設定されていないために漢字がそのまま表示されています。

 

【直し方】フリガナを使わずに並べ替える

並べ替えのときにオプションを変更することでフリガナを使わずに並べ替えることができます。

 

並べ替え→オプション→「ふりがなを使わない」にチェック

 

こうしてから並べ替えを行えば「ふりがな」は関係なく文字だけで並び替えが行われます。初期値は「ふりがなを使う」にチェックがついているため、並べ替えたときに「男」→「女」→「男」のようにぐちゃぐちゃになってしまいます。

 

原因3:数字が文字列になっている(1, 10, 2の順になる)

 

「1, 2, 3…と順番に並べたいのに、なぜか 1, 10, 11, 2, 20, 21… という順番になってしまう」

 

「並び替えをしても、正しい昇順・降順にならない」

 

これは、数字がデータとして入っているものの、エクセル側がそれを「数値」ではなく「文字列」として認識していることが原因です。

 

数字が「文字列」として認識されているのが原因

人間から見れば「10」は「2」よりも大きい数字ですが、パソコンがこれを「文字」として判断すると、ルールが変わります。国語辞典で「あ」の次に「い」が来るのと同じように、「先頭の文字」から順番に並べようとするのです。

数値の場合 量の大きさで比べる(2 < 10)
文字列の場合 左端の文字から比べる(10 は "1" で始まるので、"2" よりも先に来る)

 

「緑の三角マーク」が犯人のサイン

並び替えがおかしいセルの左上に、小さな「緑色の三角マーク」が付いていませんか?
これはエクセルからの「この数字、文字として保存されていますが間違いではないですか?」という警告のサインです。

 

他システムからCSVデータをコピーした場合や、数字の頭に「'(アポストロフィー)」が付いている場合にこの現象がよく起こります。

 

【直し方】「数値に変換する」機能で一括修正

この緑のマークが出ている場合は、エクセルの自動修正機能を使って簡単に直せます。

 

範囲を選択する

緑の三角が出ているセル(文字列になっている数字)をすべてドラッグして選択します。

 

「!」マークをクリック

選択した範囲の横に、黄色い「!」マーク(注意アイコン)が表示されるのでクリックします。

 

「数値に変換する」を選ぶ

メニューの中から [数値に変換する] をクリックします。

 

これで、左上の緑のマークが消え、データが正式な「数値」に変わります。この状態でもう一度並び替えを行えば、正しく「1, 2, 3… 10」の順に並びます。

 

半角数字と全角数字の混在にも注意!

数字を含む列の並び替えがぐちゃぐちゃになっているときは、半角数字と全角数字が混在している可能性があります。使用しているフォントによっては半角数字と全角数字の区別がつきにくい場合もあるので気をつけてください。

 

原因4:数式の参照ズレ(計算結果がおかしい)

相対参照(A1など)のまま並び替えると計算が狂う

数式が設定してあるセルを並び替えると、設定している数式によっては並び替えた結果がぐちゃぐちゃになってしまうことがあります。成績処理などで数式を使っているシートは要注意です。

 

【直し方】値として貼り付け直すか、テーブル機能を使う

こうした場合は、次の手順で並び替えを行ってください。

  1. 並べ替え用に元のシートをコピーして新しいシート(並び替え用)を作成
  2. 新しい並び替え用シートで、数式を設定してある列の値を別の列に「値貼り付け」
  3. 「値貼り付け」を行った列を基準に並び替えを行う

 

原因5:見出しや結合セルのトラブル

 

「並び替えボタンを押すとエラーが出て動かない」

 

「並び替えをしたら、一番上の『氏名』や『金額』というタイトルまで混ざってしまった」

 

これは、エクセルが表の構造(どこが見出しで、どこがデータか)を正しく認識できていないことが原因です。

 

「この操作には、同じサイズの結合セルが必要です」が出る場合

並び替えをしようとした瞬間に、このエラーメッセージが出て止まってしまうことはありませんか?

 

並び替えを行う表の中に「セルの結合」が含まれていると、エクセルは並び替えを拒否します。
例えば、2つの行を縦に結合している箇所があると、エクセルは「行ごとの入れ替え」ができなくなる(結合されたカードはシャッフルできない)ためです。

 

【直し方】セルの結合を解除する

並び替えを行う範囲内には、結合セルを使わないのが鉄則です。

  1. 表全体を選択します(あるいは、結合されているセルを選択します)。
  2. [ホーム] タブにある [セルを結合して中央揃え] ボタンをクリックしてオフにします。
  3. 結合が解除され、すべてのセルがバラバラになった状態で、再度並び替えを実行してください。

※見た目を整えるために結合を使いたい場合は、並び替えが終わった後で再度設定するようにしましょう。

 

見出し(タイトル行)がデータとして混ざってしまう場合

「氏名」の順に並び替えたはずが、「氏名」という項目名自体が「さ行」のデータの位置に移動してしまった…というケースです。
これは、エクセルが一行目を「タイトル」ではなく「データの一部」だと勘違いしているために起こります。

 

【直し方】「先頭行をデータの見出しとして使用する」にチェック

並び替えの詳細設定で、エクセルに「一行目はタイトルだよ」と教えてあげましょう。

  1. 表の中を選択した状態で、[データ] タブの [並べ替え] ボタン(大きな四角いアイコン)をクリックします。
  2. 出てきた画面の右上にある [先頭行をデータの見出しとして使用する] にチェックを入れます。
  3. これで一行目がグレーアウト(除外)され、二行目以降のデータだけが並び替え対象になります。

 

もう失敗しない!安全に並び替えを行うコツ

「並び替え」ボタンは手軽ですが、範囲選択のミスが起こりやすい機能でもあります。

 

今後、二度とデータをぐちゃぐちゃにしないために、並び替えを行うときは必ず「フィルター」を使う癖をつけることをおすすめします。これだけで、トラブルの9割は防げます。

 

必ず「フィルター」機能を使う

フィルター機能を使うメリットは、「エクセルが認識している表の範囲が可視化される」ことです。

 

見出し行に「▼」ボタンが表示されていれば、エクセルは正しく表全体を認識しています。この状態で「▼」から並び替えを行えば、絶対に行ズレ(データ崩壊)は起きません。

安全確認 「▼」ボタンがついている範囲=並び替えられる範囲です。
操作 [データ] タブの [フィルター] ボタンを押すだけです。

 

ショートカットキー(Ctrl + Shift + L)を覚える

いちいちマウスで「データ」タブを開くのが面倒…という方は、一瞬でフィルターをON/OFFできる魔法のショートカットキーを覚えましょう。

 

[Ctrl] + [Shift] + [L]

List(リスト)の L と覚えておきましょう。

 

表の中のどこかをクリックしてこのキーを押すと、一発でフィルターモードになります。(もう一度押すと解除されます)。

 

「並び替える前には、Ctrl + Shift + L」

 

この習慣さえ身につければ、もう並び替えで冷や汗をかくことはありません。
安全に、そして快適にデータを整理しましょう!


学校でのエクセル活用事例

学校現場でエクセルをどのように活用できるかに絞った先生向けのマニュアル本。クエリ機能ピボット機能校務にどのように活用できるかを事例をもとに解説しています(第1章)。

第2章の事例編では「PDFへの差し込み印刷」「フラッシュカード作成」「条件付き書式による成績確認」など先生に必須の機能を紹介。第3章テクニック編、第4章 トラブル回避編も学校でのエクセル操作に絞って解説しています。


*本書の対象はエクセルを使ったことがある先生向けです。エクセルを使ったことがない方、初心者の方には前著「先生Excel」をオススメします。(前著)初心者向け⇒先生向けエクセル講座「校務Excel」