• ベストアンサー

EXCELでデータ並べ替えにの時、英字と0を含む文字列の場合

表計算ソフトEXCELでデータ並べ替えにの時、英字と0を含む文字列の場合、例えばG1~G9999の9999個のデータの場合以下のように順番に並ばないのですがどうしたら順番に並ぶでしょう か?お詳しい方いらっしゃいましたらよろしくお願い致します。G1をG01やG001やG0001に変えて入力するのは都合上難しいです。。。 以下ではなくて、 G1397 G1398 G1399 G14 G140 G1400 G1401 G1402 G1403 以下のように並べたいのですが。。。 … G13 G14 G15 … G139 G140 G141 … G1399 G1400 G1401 … お手数をおかけ致します。

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

  • ベストアンサー
  • HAL007
  • ベストアンサー率29% (1751/5869)
回答No.1

例題の様に英字の字数位置が決っているのでしたら 隣の列や最終列にleftやmid関数を使って英字と数字を 分解する方法を取っています。 例えば、A列に問題のコードがある場合  英字は =LEFT(A1,1)       左から1文字を抽出する  数字は =VALUE(MID(A1,2,5))       左から2文字目以降5文字を抽出して       数字を数値に変換する。      ※VALUE関数は明示的に数値(値)とする為です。       数字は文字としてハンドリングされる為       分解前と同じ結果にしかなりません。 英字の部分が不規則ですとこの方法は使えません。

mitsuo-0324
質問者

お礼

やってみました、できますね。ありがとうございます。

その他の回答 (2)

noname#161966
noname#161966
回答No.3

ちゃんと送信されなかったっぽいので・・・ RIGHT(A1, LEN(A1) は、 RIGHT(A1, LEN(A1)-1) です。 またちゃんと送信できないとやっかいなので、 全角にすると、 RIGHT(A1,LEN(A1)-1) です。

mitsuo-0324
質問者

お礼

できますね、ありがとうございます。 どちらさまも丁寧に説明して頂きとてもうれしく思っています。 アドバイスに優劣はございません。 感謝しております。

noname#161966
noname#161966
回答No.2

同じ行のセルに =RIGHT(A1, LEN(A1) とかってやって、数字の部分だけを抽出し、一緒に(データ→並べ替え)から並び替える列を抽出した列に指定したら出来ると思います。

関連するQ&A