• 締切済み

文字列を数値としてソートするには

こんにちは。 "."区切りで数値が並ぶ列を、次のようにソートしたいのですが、何か良い方法はありませんか。 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 よろしくお願いします。

みんなの回答

  • ka_na_de
  • ベストアンサー率56% (162/286)
回答No.3

すみません。記入ミスです。 <誤り> 3)E1セルに =IF(B2="",0,B2) と入力し、E1~G10にコピー&ペースト <正解> 3)E1セルに =IF(B1="",0,B1) と入力し、E1~G10にコピー&ペースト

  • ka_na_de
  • ベストアンサー率56% (162/286)
回答No.2

参考までに一案を示します。 前提: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列削除 

noname#244834
質問者

お礼

ka_na_deさん 回答ありがとうございます。 「区切り位置」でこのような変換が行えるのですね。 色々と試してみます。

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

◆とりあえず例題はクリアします ◆作業列をB列に B1=--SUBSTITUTE(A1&".",".",":") ★下までコピー ★B列をキーに並べ替えをします

noname#244834
質問者

お礼

maron--5さん 回答ありがとうございます。 質問が曖昧だったため恐縮ですが、区切りはn階層になるので 教えていただいた方法ですと、制限があります。 ただ、この方法も便利なので、色々と試してみたいと思います。