• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルのソート順がおかしい)

エクセルのソート順がおかしい

このQ&Aのポイント
  • B4セルから縦方向にデータを降順にコード順にソートする方法を教えてください。
  • VBAで作成された関数を使用してデータの比較を行っていますが、川崎とG大阪の大小関係がおかしいです。
  • エクセル2000で2分木探索を使用してソートを行っていますが、コード順になりません。どうすればよいでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>どうすればソートがコード(ユニコード)順になるのか、教えて下さい ちなみにOption Compare Textを宣言すると,通常のワークシートのソート順にVBAが従うようにできます。 そうではなくあくまでも並べ替えの動作をVBAに倣わせたいのでしたら,そういう設定はありません。 ご自分でVBAと同じユニコード順に従って並べ替えるプログラム(たとえば簡単なバブルソート)を実装して,実行してください。

その他の回答 (2)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

>川崎 < G大阪 >大小関係がおかしくなる。 全体は見えませんが、Unicode 比較でしたら、正しいのではありませんか? 全角のGは、FF27 (24029)です。 川崎の川は、5DDD (-217)ですから、 どちらが大きいかは自明ですね。 JIS比較するなら、 全角のGは、90EC(-32154)です。 川崎の川は、8266(-28436)ですから、 川崎 > G大阪 となりますね。 ワークシートは、JIS比較です。VBAでも、JIS比較は出来ますが、ワークシートの並べ替えを使ったほうが早いです。 TextCompare にしたら、全角・半角・小文字・大文字が一緒になります。だから、Gそのものは、半角扱いになりますから、 半角:全角 "G" = "G" となります。 なお、質問は、[ですます]文でお願いします。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.2

磐田(イワタ) 川崎(カワサキ) G大阪(ガンバオオサカ) C大阪(セレッソオオサカ) ()内のフリガナ順になってませんか? 並べ替え時にオプションで“ふりがなを使わない”設定にしてみてください。 VBAだとSortMethodでxlPinYinが“ふりがなを使う”、xlStrokeが“ふりがなを使わない”になります。