重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

こんにちは。

"."区切りで数値が並ぶ列を、次のようにソートしたいのですが、何か良い方法はありませんか。
1
1.1
1.1.1
1.2
1.2.1
1.10
1.10.1
1.10.2
1.10.10

これを普通にソートすると、2より10が先にきてしまいます。
1
1.1
1.1.1
1.10
1.10.1
1.10.10
1.10.2
1.2
1.2.1

よろしくお願いします。

A 回答 (3件)

すみません。

記入ミスです。

<誤り>
3)E1セルに =IF(B2="",0,B2) と入力し、E1~G10にコピー&ペースト
<正解>
3)E1セルに =IF(B1="",0,B1) と入力し、E1~G10にコピー&ペースト
    • good
    • 0

参考までに一案を示します。



前提:A列に上記のデータが文字列で入力されている。


1)B列にA列をコピー&ペースト
2)B列を選択し、上部メニューから「データ」→「区切り位置」を選択
 「カンマやタブなどの・・・・」にチェックを入れて「次へ」
 「その他」にチェックを入れて左の欄に「.」を入力し「完了」
3)E1セルに =IF(B2="",0,B2) と入力し、E1~G10にコピー&ペースト
4)A~G列を選択し、「データ」→「並べ替え」を選択
  「最優先されるキー」を「E列」にして「昇順」
  「2番目に優先」を「F列」にして「昇順」
  「3番目に優先」を「G列」にして「昇順」
  「OK」
5)B~G列削除 
    • good
    • 0
この回答へのお礼

ka_na_deさん

回答ありがとうございます。
「区切り位置」でこのような変換が行えるのですね。

色々と試してみます。

お礼日時:2007/06/21 23:47

◆とりあえず例題はクリアします


◆作業列をB列に
B1=--SUBSTITUTE(A1&".",".",":")
★下までコピー
★B列をキーに並べ替えをします
    • good
    • 0
この回答へのお礼

maron--5さん

回答ありがとうございます。
質問が曖昧だったため恐縮ですが、区切りはn階層になるので
教えていただいた方法ですと、制限があります。

ただ、この方法も便利なので、色々と試してみたいと思います。

お礼日時:2007/06/21 23:48

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