• ベストアンサー

エクセル 桁数によって頭に文字をつけたい

エクセルで、4桁の数字なら頭にabをつけて値を返す。 5桁の数字なら頭にaをつける。 ということをしたいのですが、IFとLENを組み合わせて書けばいいのでしょうか。。。? 初心者で判らなかったので、よろしくお願いします。

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

  • ベストアンサー
  • root_16
  • ベストアンサー率32% (674/2096)
回答No.4

4桁、5桁のみ対応でいいなら IF文で、A1にデータがある時 =IF(A1<1000,A1,IF(A1<10000,CONCATENATE("ab",A1),IF(A1<100000,CONCATENATE("a",A1),A1)))

その他の回答 (7)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.8

別セルでいいなら A1:元の数値 B1:=LEFT("abcdef",6-LEN(A1))&A1

mama230
質問者

お礼

色々やってみてできました。ありがとうございました!

回答No.7

サンプルが欲しかったし、以後の取り扱い方も気になるところ B1セルに =CHOOSE(LOG(A1)+1,"","","","ab"&A1,"a"&A1) 下へオートフィル

mama230
質問者

お礼

色々やってみてできました。ありがとうございました!

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.6

こう言う質問は、 (1)結果を別セル(従って別列)に出して良いのかどうか (2)数値の入っているセルで、そう見せたいのか(この場合は表示形式の設定になる)   表示形式の設定において表形式の中に関数のようなものを入れることは出来ない。   [ ]の中に指定できる[>10000]のような使い方で、数値範囲だけが例外。 セルの値と表示形式の設定を、質問者は区別できてなくて質問しているのではないか。 これが回答の混乱をきたす。 (3)前の列に列挿入して、その列で、abやaを出すのはどうかな。 もとの列の数値は数として、他セルで計算に使えるから。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.5

一例です。 =IF(OR(LEN(A1)=4,LEN(A1)=5),MID("ab",1,6-LEN(A1))&A1,A1)

mama230
質問者

お礼

色々やってみてできました。ありがとうございました!

回答No.3

ご質問されている内容を単純に実現するには、以下の関数でよろしいのではないでしょうか。 A1セルに対象の数字がある場合 =IF(LEN(A1)=4,"ab"&A1,IF(LEN(A1)=5,"a"&A1,""))

mama230
質問者

お礼

色々やってみてできました。ありがとうございました!

回答No.2

A列に数字が入っているとしてこんな感じでしょうか? =IF(LEN(A1)=4,"ab"&A1,IF(LEN(A1)=5,"a"&A1,A1))

mama230
質問者

お礼

色々やってみてできました。ありがとうございました!

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

ご相談に詳しく書かれていない,実際にやりたいことに応じて手立ては幾つも考えられます。 ●実際にセルに入れる,若しくは計算結果は,あくまでも「数値」である場合 単に4桁以下(2桁や3桁の場合を含むという意味です)と5桁以上で仕分けるなら, セルを右クリックして書式設定の表示形式のユーザー定義で [>=10000]"a"0;"ab"0 などのように設定しておくとできます。 ●実際にセルに入るのは「数値」だけど,4桁に満たない数字はゼロを埋めて4桁にしてaを付けたい場合 セルを右クリックして書式設定の表示形式のユーザー定義で [>=10000]"a"0;"ab"0000 などのように設定しておくとできます。

mama230
質問者

お礼

色々やってみてできました。ありがとうございました!

関連するQ&A