- ベストアンサー
「ABC1」→「ABC01」としたい
取引先の会社からエクセルファイルをいただく時に ABC1 ABC2 ~~~~ ABC10 ABC11 のようなデータなので並べ替えをすると ABC1 ABC10 ABC11 ~~~~~ ABC2 ABC20 という風になってしまうので、1桁の数字には0を入れたいのですが どうすればよろしいのでしょうか? (ABCというところは品番で、他にもDEF,GHIなどと他の品番が混ざって入っているため、並び替えがしたいのです) 過去ログ、エクセル質問サイトなどを見たのですが どのカテゴリーの作業なのかわからず探すのが難しかったので 質問させて頂きました。お願いします
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
提示の例では、頭3桁がローマ字、残りの桁が数字になってますが、 頭のローマ字部分の桁が、3桁未満とか4桁以上ある場合や A1______> A01 AB2_____> AB02 ABC3____> ABC03 ABCD4___> ABCD04 頭のローマ字部分に数字が混ざっている場合 A5Y4____> A5Y04 AB5Y4___> AB5Y04 なども考慮して、一案。 A2からデータがある場合、以下を必要な分だけコピー =IF(ISERROR(VALUE(RIGHT(A2,2))),LEFT(A2,LEN(A2)-1) & "0" & RIGHT(A2,1),A2) こういった類の質問をする時は、 ABC1、ABC2 とかではなくて、実際のものをいくつか提示し、 それについてローマ字部分の桁は固定だとかそうでないとかなどの 補足情報を具体的に提示した方がベターかと。。。
その他の回答 (4)
- zap35
- ベストアンサー率44% (1383/3079)
A列に文字列があるとき、空いている列に =IF(MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789"))=LEN(A1),LEFT(A1,LEN(A1)-1)&"0"&RIGHT(A1,1),A1) を入力して下方向にコピー するとABC1→ABC01となるはずです。 ただしA9C1のように品番に数字があるとダメです。その場合はユーザ定義関数(マクロ)にしないとならないかもしれません
お礼
ありがとうございました。参考にさせて頂きます
- j_nishiz
- ベストアンサー率26% (183/697)
データがA列にあるとして、 B列に以下の式を記入です。 =LEFT(A1,3)&TEXT(MID(A1,4,2),"00")
お礼
ありがとうございました。
- mu2011
- ベストアンサー率38% (1910/4994)
対象データは品番3桁、数字1,2桁としています。 (1)対象データ列をA列、変換列をB列とします。 (2)B1に=LEFT(A1,3)&TEXT(MID(A1,4,2),"00")を設定して、フィルハンドル(B1セル枠の右下の■)をダブルクリック (3)B列を選択→コピー→A列で形式を選択して貼り付け→値にチェックを付ける→OK
お礼
ありがとうございました。参考にさせて頂きます
- mars-r
- ベストアンサー率18% (112/594)
変更したいファイルのアイコンを右クリックしてMキーを押してCと1の間に0を挿入。
お礼
ありがとうございました。 今回は多数のデータを一括で変換したいということでした。 説明不足でもうしわけありません
お礼
応用もありがとうございます。 実際のもので質問したかったのですが、そういうわけにいかないので、 自分で少しアレンジしてしまいました。申し訳ございません 皆様すばやい回答ありがとうござました。助かりました