- ベストアンサー
エクセルの並び替えが上手くできません。
エクセルの並び替えで、「茨城、栃木、群馬、千葉、埼玉、長野」を昇順で行った場合、栃木は最後から二番目が通常なのですが、ある出来上がってる表で行うと一番最後にななります。上から入力しなおすと最後から二番目になります。なにが原因なのでしょうか? よろしくお願い致します。
- みんなの回答 (9)
- 専門家の回答
質問者が選んだベストアンサー
> 「書式-ふりがなで、ふりがなのデータがあるか」という事で、 > ふりがなの「編集」で「栃木」の上「とちぎ」と小さく出てき > ました。「設定」では、種類がカタカナ」になっていました。 ?自動的に、ひらがながカタカナに変りません? まあ、ひらがな、カタカナでも「あいうえお」順に並んだと思い ますので問題なしかと・・・ひらがなカタカナ設定はセル単位で 設定可能ですので、お気になさらずに^^; > でも、並び替えのオプションで、ふりがな順に並び替え指定 > しても栃木は一番下になってしまいました。 > ふりがなのデータは入っている事になるのですか? 空白とふりがな「とちぎ」だと一番最初になりません? たぶん、栃木には、入っているが他のセルはデータが入っていな いのだと^^; =「ふりがな」&「入力値」 で、ふりがなの場合並び替えていたような記憶がありますので
その他の回答 (8)
- imogasi
- ベストアンサー率27% (4737/17069)
(1)コンピュター処理のソート(並べ替えの)根本原理は、文字コード順です。文字列では左からビットがOFFのものが先(昇順の場合)でONのものはあとです。これを文字列のビット列の終わりまで比較します。そこであるビットで巻けたらそこで2者の勝負は決着です。 ==ここでの混乱は、気づかない、半角全角混合や先頭のスペースの有無です (2)文字コードが同じ(例えば)「大」のじでも、オオとダイの読みがあって、両者近くに並ぶと使いにくいので、カナというかな文字コードという、日本人の考えるカナ順が一致するように振ってあるカナを使ってかな順に並べ替える親切をエクセルは作りました。 エクセルからコンピュターに入った人は、これを当たり前のように思っている時期があるが、途中バージョンからできた、苦労して作り上げたシステムです。入力したときの仮名漢字変換のカナデータを保存しておいて使うのですから。 ==ここでの混乱は仮名漢字変換のときの、不自然な変換に原因があります。東京をヒガシ/キョウと入れて出すのと、トウキョウと入れて出すのと異なる結果になるからです (3)エクセルはさらに、社会的に順序ずけられた順序(例えば春夏秋冬や社長専務常務部長課長)などの順序もその順にならぶ機能まで付け加えました。これは内部で社長は1、専務は2のようなコードを エクセルが見えないところで一時的に振って、そのコードでソート しているはずです。これもその苦労が見えないので、そんなものかと理解している人もあろう。 これはツールーオプションーユーザー設定で設定する。 ==本質問はこのケースではまさかないと思うがチェックは必要。 ーーー いま本質問について、ずばり原因は指摘できないが、原因がわかった際には、必ず(1)(2)(3)のどれかだと断言できる。
お礼
詳しく難しいことを丁寧に教えて下さって、ありがとうございました。知らない事だったので、システムについてよく分かりました。 原因ははっきり分からないのですが、ユーザー設定はされてなかったし、半角全角混合やスペースもなかったので、(ふりがな書式は記憶されていましたが)多分(2)だと思います。 回答ありがとうございました。
- zap35
- ベストアンサー率44% (1383/3079)
#02です。件数が少なければ手作業でフリガナをふり直せば期待通りに並べ替えできると思います。でも件数が多いなら、マクロでフリガナをふり直す方法を説明します。興味があれば試してみてください。 まず以下のような県名とフリガナの対応表を作成します。同じEXCELブック内のどこに作成してもかまいません。。栃木だけがおかしいなら「栃木」だけを記述すればよいです。 県名 フリガナ 茨城 イバラギ 群馬 グンマ 埼玉 サイタマ 千葉 チバ 栃木 トチギ 長野 ナガノ 次に今作成した表に名前を付けます。対応表全体を選択して「挿入」→「名前」→「定義」を選択し、名前欄に「県名」と入力します(「」は不要) 以下のマクロを、ALT+F11でVBE画面を開き「VBAProjectエクスプローラのシート名右クリック」→「挿入」→「標準モジュール」で表示される画面にペーストして下さい。 Sub Macro9() Dim r As Range, res For Each r In Selection res = Application.VLookup(r.Value, Range("県名"), 2, 0) If IsError(res) Then Else r.Characters.PhoneticCharacters = res End If Next r End Sub 最後に実行します。シートに戻り漢字の県名の範囲を選択します。 そしてALT+F8でマクロ一覧を開き、Macro9を選択して「実行」クリック。 これで県名のフリガナが対応表の値に置き換わります。ただし対応表にない県名については置き換えはしません。(栃木だけがおかしいなら「栃木」だけを対応表に入れます)
お礼
今回は件数が少なかったので、手入力でも大丈夫ですが、いつも少ないとは限らないので、教えて頂いた方法でやってみようと思います。 マクロは最近使い始めたのでちょっと難しそうですが、理解しようと思います。 回答ありがとうございましたm(__)m とても勉強になりました。
- Dxak
- ベストアンサー率34% (510/1465)
ふりがなのデータが入っているけど、「栃木」が一番下に? ・ふりがなのデータがある ・並べ替えで、ふりがなを使用している のであれば、その先は原因が予想つきませんm(_ _)m > =「ふりがな」&「入力値」 こちらの方は、回答と関係なくなるのですが・・・ 栃木以外のふりがなが空白の場合、ふりがながあるものだけを頭につけて とちぎ栃木 茨城 群馬 埼玉 千葉 長野 の順に並べ替えます と、こっちで予想してみたのですけどね。
お礼
> =「ふりがな」&「入力値」 なるほど、そういう方法もあるのですね。やってみようと思います。 色々返答して下さり、ありがとうございました。 とても勉強になりましたm(__)m
- ASIMOV
- ベストアンサー率41% (982/2351)
たぶん、 >ある出来上がってる表 では、振り仮名が正しく入っていないのだと思われます で、 >上から入力しなおすと 振り仮名も、入力されたので、通常のならびになったと考えられます
補足
「書式」の「ふりがな」「編集」で調べたのですが、全ての項目にふりがなはカタカナで入ってました。 それでも、並び替えで栃木が一番下でした。(>_<) 回答ありがとうございました。
- dezimac
- ベストアンサー率56% (2365/4208)
PC上では例えば「栃木」だったら、「とちぎ」と認識しているわけではなく、「93C8 96D8」のようなコード(数値)で認識しています。 その結果、ソートすると人が考えている本来の読みは違う順番で並んでしまう事が起きます。 例) 茨:88EF 群:8C51 埼:8DE9 千:90E7 長:92B7 栃:93C8 Excelで新たに入力した際に読み通りにソートされるのは、 漢字に変換する前のひらがなの状態の情報も記録しているからです。 「栃木」=「とちぎ」 確実に読み通りのソートを行いたいのならフリガナの列を設けて、それでソートするしかありません。
補足
回答ありがとうございます。 「栃木」のふりがなは書式に記憶されているようなので、入力直後はふりがなで並び替えをして、時間がたつと上記の「コード」で並び替えてしまうということですか?
- Dxak
- ベストアンサー率34% (510/1465)
書式-ふりがなで、ふりがなのデータがあるか確認ください 通常、手打ちであれば、ふりがなのデータがあるので希望通り並びます ふりがなが無ければ、漢字コード順に並ぶのでblureskyさんが言う通り の順番に並び替えが行われます。 ふりがながある場合は、並び替えのオプションでふりがな順の並びに指 定できます
補足
回答ありがとうございました。 「書式-ふりがなで、ふりがなのデータがあるか」という事で、ふりがなの「編集」で「栃木」の上「とちぎ」と小さく出てきました。「設定」では、種類がカタカナ」になっていました。 でも、並び替えのオプションで、ふりがな順に並び替え指定しても栃木は一番下になってしまいました。 ふりがなのデータは入っている事になるのですか? よろしくお願いします。
- zap35
- ベストアンサー率44% (1383/3079)
「並べ替え」→「オプション」で「ふりがなを使わない」にチェックしてもだめですか?
補足
「ふりがなを使わない」にしても「ふりがなを使う」にしてもだめでした。 回答ありがとうございました。
- kjtyn
- ベストアンサー率35% (20/56)
名前や住所で並べ替えをすると、たとえば、沢=サ行でOKですが、澤=最後の行になります。よって、解決策は、A列=1,2,3,,順位をつけ、A列で並べ替えると確実です。
お礼
そうですね、その方法が一番確実のようです。 回答ありがとうございました m(__)m
補足
またの回答ありがとうございますm(__)m >たぶん、栃木には、入っているが他のセルはデータが入っていな いのだと 埼玉など他のセルも見たのですが、ふりがなは「編集」で出てきました(>_<) >=「ふりがな」&「入力値」 で、ふりがなの場合並び替えていたような記憶がありますので ってどういう意味ですか? たびたびすみません。