• ベストアンサー

Excel同一セル内の、アルファベットと数字の順番を入れ替えについて教えてください

ExcelのA列のセルに、アルファベットと数字の組み合わせが3000行くらい入っています。 アルファベットは1~3個でA~Z、 数字も1~3個で0~9 の組み合わせです。アルファベットと数字の配置は A1    A12    A123 AB1 AB12 AB123 ABC1 ABC12 ABC123 の9通りか、数字が先にくる場合の9通りのいずれかです。 (アルファベットと数字はそれぞれまとまっていて、入り混じることはありません) これを、 1A 123ABC  のように、数字を前に持ってくるように統一したいのです。 もともと数字が前に入っているセルはそのままで有効です。 マクロを使わず、B列以降のセルを使って関数でできないでしょうか? ご説明がうまくできなくて申し訳ないです。 よろしくお願いいたします。

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

  • ベストアンサー
回答No.2

=RIGHT(A1,LEN(A1)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&1234567890))+1)&LEFT(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&1234567890))-1)

haretahi
質問者

お礼

すごい!!ものすごく感動しました。 そうか、こうするのか!と。 本当にありがとうございました。 おかげ様でとっても助かりました。

その他の回答 (3)

noname#204879
noname#204879
回答No.4

   A   B  C   D 1 A1   1  A  1A 2 A21   21  A  21A 3 A321  321 A  321A 4 BA1   1  BA  1BA 5 AB12  12  AB  12AB 6 BA123  123 BA  123BA 7 XYZ1  1  XYZ 1XYZ 8 LMN21  21  LMN 21LMN 9 ABC231 231 ABC 231ABC B1: {=MID(A1,MATCH(TRUE,ISNUMBER(1*MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)),0),3)} (配列数式) C1: =SUBSTITUTE(A1,B1,"") D1: =B1&C1

haretahi
質問者

お礼

私が目指していたのはまさにこの方法でした! そしてLENのあたりでつまづき・・・ おかげ様ですっきりいたしました。 どうもありがとうございました。

  • keirika
  • ベストアンサー率42% (279/658)
回答No.3

1.A列を『昇順』に並べ替えます   すると先頭が数字だけの上に集まります 2.先頭が数字のものだけ選択し、そのままB列に貼り付けます。 3.先頭がアルファベットのセルの右側(仮にB100とします) =MID(A1,SEARCH(1,A100),3)&LEFT(A1,SEARCH(1,A100)-1) を入力し、した方向へコピーします。 これでB列には先頭が数字のものだけになるかと思います。 一度お試しください。

haretahi
質問者

お礼

ご回答ありがとうございます。 ただ・・・数字は1で始まるとは限らないんです。。。 私のご説明がわかりにくかったです、 すみません。

noname#17648
noname#17648
回答No.1

数字の開始が必ず「1」なら、 FINDで、位置を探し、 LEFT関数とMID関数で取り出せますね。 MID関数で取り出した数字と LEFT関数で取り出した英字を 「&」でつなげばよろしいかと思います。

haretahi
質問者

お礼

ご回答ありがとうございます。 質問を投稿後、すぐにご回答いただいたのに 私の書き方が悪くて、すみません。 数字は0~9の組み合わせで、1~始まるとは限らないんです。。。 でもでも、ありがとうございました。

関連するQ&A