プロが教える店舗&オフィスのセキュリティ対策術

エクセルの「データ→並べ替え」の質問です。
住所録(900行超)を並べ替えると、どういう訳か2つのグループに分かれて、それぞれでソートされます。どうしてかなぁ?文字列でも数字列でもダメでした。全体をひとつのデータとして「あいうえお順」もしくは「郵便番号順」にソートしたいのですが、改善策を教えてください。よろしくお願いします。

A 回答 (3件)

> 表示形式などを統一して(<0>ゼロを反映させるために文字列にしてます)、


> 範囲指定しソートするのですが、うまくいきません。おかしいですねぇ。

郵便番号の4文字目に"-"が入っていないのですか。
表示形式は、文字列にしても先頭に ' が付いているものと付いていないものが
混じっているためと思います。

次の手順で操作してみてください。

・郵便番号が入力されているセル範囲を選択します。
・シートのシート名タブを右クリックして「コードの表示」を指定します。
・開いたコードウィンドウに下記コード6行をコピーして貼り付けます。
・メニューから[実行]-->[Sub/ユーザーフォームの実行]を指定します。
・貼り付けたコードを全て削除します。
・Alt+ Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。
・これで通常の方法で並べ替えします。

Sub ChgStr()
Dim Rng As Range
For Each Rng In Selection
  Rng.Value = "'" & Rng.Text
Next Rng
End Sub
    • good
    • 0
この回答へのお礼

了解。
遅まきながらお礼申上げます。
有難うございました。

お礼日時:2003/09/13 17:16

この状況から、まず考えられるのは、住所に「振り仮名」が設定されているものと


設定されていないものがあることですね。

他からインポートしたとか貼り付けたデータが混じっていませんか?

試しに、並べ替え時にオプションで「振り仮名を使わない」を指定してみてください。

これで漢字順で並べ替えできたと思いますが、「振り仮名順」で並べ替えしたい場合は、
次のように操作して「振り仮名」を設定してみてください。
( ※ MS-IMEがインストールされていることが必要です。)

1. 整列のキーになる列(仮名を振る列(例えば住所))のデータ範囲を選択します。

2. Alt + F11 を押します。

3.「イミディエイト」ウィンドウ(表示されていなかったらCtrl+G)に
  下記の1行をコピーして貼り付けて、その行で<Enter>を押します。

Selection.SetPhonetic

4. Alt + Q でシートに戻ります。

これで、通常の「振り仮名を使う」で並べ替えを行ってください。

希望通り並べ替え出来ると思います。

郵便番号での並べ替えは、問題ないと思いますが・・・

この回答への補足

他からの貼付けがあったので面倒おこしてるんですね。しかし、郵便番号順が希望なんですが、表示形式などを統一して(<0>ゼロを反映させるために文字列にしてます)、範囲指定しソートするのですが、うまくいきません。おかしいですねぇ。何か他に考えられる原因とかありましたら追加で教えてください。有難うございます。

補足日時:2003/09/10 20:17
    • good
    • 1

表全体を選択した後、「ツール」→「並べ替え」を選択して、ソートの基準となる列を指定しても同様でしょうか?

    • good
    • 0
この回答へのお礼

Hageoyadiさん。いつもサポートして頂いて助かってます。で、本題ですが、はじめに選択範囲を指定して私のエクセルは「データ」→「並び替え」なんですが、これをして郵便番号の列を指定して、不成功だったんですよ。おかしいですね。他の方法もためしてみます。有難うございました。

お礼日時:2003/09/10 20:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!