• 締切済み

Excelの並び替え

Excelの並び替え(フィルター機能使用)についてですが、 普通に1→2→3→…のように数字だけでしたら、問題なく並び替えられます。 しかし、画像のように枝番が含まれているとき、 どのようにすれば、ちゃんとした順番になるのでしょうか。 (画像の例だと1→2→3→10→11→…というようになってしまいます。) また、文字例が入っている場合(○○1,△△1など)も同じような現象が起きるのですが、これも対処できるのでしょうか。 よろしくお願いします。

みんなの回答

  • chayamati
  • ベストアンサー率41% (260/624)
回答No.6

こんにちは 並び替えるセル郡の右隣りに =TEXT(最初のKeyのセル,"0000") これを以下の行にコピペ 但し9-18は日付として扱われるので 事前に半角の-を全角,_置き換えておく等 もう一工夫が要ります。

  • chayamati
  • ベストアンサー率41% (260/624)
回答No.5

こんにちは 数値、数字、文字が混在している列は文字ばかりの列を追加します 分類列のセル=TEXT(元のセル,"####")

  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.4

-の左右は自然数。 半角スペース、全角スペースを無視する。 -、半角スペース、全角スペース、半角数値以外は使わない という条件でよければ B1セル以下に =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"-",".")," ","")," ","")*1 といった計算式を埋め B列をソートキーにして並べ替えるという方法はいかがでしょうか。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.3

回答No.2の桁合わせの例でミスがありました。このサイトは半角の空白が連続する文字列を半角の空白1個に圧縮されるため空白が2個を付加した文字列が空白1個に修正されています。 桁合わせの考え方としては親番を2桁として1桁のデータには先頭に空白1個を付加し枝番を"-"と数字1桁とすれば枝番無しのとき空白2文字を右側に付加するようにすれば桁合わせになります。 並べ替えはすべてのデータが文字列として文字コード順に昇順とします。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.2

>しかし、画像のように枝番が含まれているとき、 >どのようにすれば、ちゃんとした順番になるのでしょうか。 Excelのバージョンは? 貼付画像のような結果にしたいということでしょうか? 質問の文面と添付画像に矛盾が有るようです。 >画像の例だと1→2→3→10→11→…というようになってしまいます。 1→2→3→5→6→7→9→10→11→…のようになるはずです。 これは枝番が無い値は数値として認識し枝番が有る4-1、4-2等は文字列として扱われるため、数値<文字列の原則が適用されるためです。 >また、文字例が入っている場合(○○1,△△1など)も同じような現象が起きるのですが、これも対処できるのでしょうか。 文字列同士の比較は先頭文字から順に文字コードの順に並び替えますので右側の数字を基準に並べ替えはできません。 作業用の列を用意してデータの前処理をする必要があるでしょう。 具体的には要件を整理して元データと並べ替え後のデータの例を提示して頂ければ手順を説明できます。 貼付画像の左側が元データとして右側が希望の並べ替え後のデータと解釈すれば、文字列の桁数を揃えた文字列で並べ替えを実行します。 桁合わせは次のようにすると良いでしょう。 "1"→" 1 "、"2"→" 2 "、・・、"4-1"→" 4-1"、"4-2"→" 4-2"、・・、"11"→"11 "、"12-1"→"12-1"、・・・・

  • msMike
  • ベストアンサー率20% (368/1813)
回答No.1

「文字列が入ってい」ない場合は、4-2、8-3、12-1 を4.2、8.3、12.1 のような数値にすることですよ!

h1409brt
質問者

お礼

回答ありがとうございます。 枝番(-)じゃなく、ピリオド(.)だったらなるんですね。

関連するQ&A