• ベストアンサー

Excel 文字列にする関数

エクセルが苦手なので教えてください! 選別番号で6桁の数字を使っているんですが、頭の数字が0から 始まるものがあり、セルに入力するとその選別番号だけ5桁に なってしまいます。 文字列にすればいいということだけはわかっているのですが、 すでに数字が入っている列に対して、関数を使って以下のような ことはできますか? (1)選別番号が5桁だったら、頭に0をつけて6桁にする、  かつ文字列にする (2)選別番号がすでに6桁だったら、そのまま文字列に変換 宜しくお願いします!

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

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

  =IF(COUNT(A1)<6,0&A1,A1) これは間違い =IF(LEN(A1)<6,0&A1,A1) これで 12345-->012345 123456-->123456 1234567890-->1234567890 この様になります この式の問題は4桁以下の時、1234-->01234と5桁になる事  

aisatiho
質問者

お礼

できました!4桁以下は扱わないので大丈夫です。ありがとうございました!

その他の回答 (3)

noname#99913
noname#99913
回答No.4

別に文字列にしなくていいのなら、「セルの書式設定」の「ユーザー定義」で、下のように設定すればできますが。 000000

aisatiho
質問者

お礼

このあとちょっとVLOOKUPで他のデータとひっつけなければならないので、文字列にしないといけないんですよ~。 回答ありがとうございます!

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんにちは1 色々方法はありますが・・・ 一例として、 A1セルに番号が入っていてそれを表示させる場合です。 =IF(A1="","",TEXT(A1,"000000")) と桁数分だけ0の数を入れてみてください。 以上、参考になれば幸いです。m(__)m

aisatiho
質問者

お礼

ありがとうございました!これでもできました!

回答No.1

  =IF(COUNT(A1)<6,0&A1,A1) 5桁か6桁しか存在しないならこれだけ  

aisatiho
質問者

補足

早速の回答ありがとうございます!助かりました。 実は選別番号は6桁or10桁なんですけど(10桁は頭に0がつくことはないです)、10桁の方も文字列にする場合はどのようになりますか・・・?

関連するQ&A

  • エクセル 関数 001 002と文字列で表示した

    お世話になります。 XP/ エクセル2003 使用です。 エクセルの関数で、 数字を3桁で数字を表示したく 下記のように関数を組みました。 (セルの書式は、文字列にしています) 001の場合  =IF(A1="","","001") とし、001が問題なく返ってきます。 次のセルに、002と連番を振っていきたいので  =IF(A2="","",B1+1) としましたが、   2  (002ではない) と返ってきます。(書式は文字列) 002、003、004・・・と続けていきたいのですが、 どのようにすればよろしいでしょうか? ご多用中恐れ入りますが、 よろしくお願いします。

  • 文字列での関数式

    当社の商品のコードには、頭に”0”が付きます。 質問1:数字の頭に”0”が付くと言うのは、エクセル上では、あくまでも文字列であって、数字ではないのでしょうか?或いは、”0”を付けて、数字として認識する方法はありますか? 質問2:既に”0”付きで、入力してあるコードのリストで、VLOOKUPの関数式を使う方法はありますか? 質問3;文字列で入力してある数字を、エクセル上で数字に変換する方法を教えてください。

  • Excelの「’」とセルの書式設定(文字列)の違い

    こんばんわ。 Excelの文字列表示について、教えてください。 数字を入力する際に、先頭に「'」を入力すると 文字列として入力することが出来ますが、 数字が入っているセルのセルの書式設定から 「文字列」に表示形式を変更することとの 違いはなんなんでしょうか? やり方は違うけれど、結果は同じということでしょうか? 「'」を入力すると、データが文字そのものに変わり、 表示形式を変更すると、見た目だけ(左揃えになるなど) 文字列のように見えるだけで、データは 数字のままということなんでしょうか?? また、文字列として入力された数字を Value関数で数値に変換してしまうのと セルの書式設定で「数値」に変更するというものも 同じように、違いが良く分かりません。。。 もう、頭の中が「??」だらけです。 違いを教えていただけたら・・・と思います。 どうぞよろしくお願いいたします<m(__)m>

  • Excel 2007 文字列について

    Excel 2007 文字列について 郵便番号に「-」を入れたいです。 1つのセルに例えば「0001111」とある場合に 「000-1111」と変換したいです。 どのような関数またはマクロを作成すればよろしいでしょうか。

  • エクセル:セル内の文字列の最後の「,]を消したい。

    エクセル:セル内の文字列の最後の「,]を消したい。 以下のように、数字(1桁または2桁)がカンマでわかれたデータがあります。 この文字列の中で、一番最後の「,」だけ消したいのですが、 何か良い方法はないでしょうか。 1,1,1,1, ⇒最後のカンマを消したい 1,2,3,4  ⇒カンマがないのでそのままでOK 1,1,2,3,4  1,2,3,   1,11,12,

  • Excel セル内の文字だけを取り出すには

    Excelの1つのセルに 01234 ABCDEFG のように、「数字5つ(固定)+半角スペース+(任意の数の)文字」 が入力されています。数値は必ず5桁と決まっていますが、 文字列の数はさまざまです。 関数で文字の部分だけ、別のセルに取り出したいのですが、 どの関数を使うとできますか?教えて下さい。 よろしくお願いします。

  • エクセル文字列の関数について

    エクセルで、例えば、¥15,214みたいな一つのセルに入っている数字があるとします。その数字を一つ一つのセルに A1 1 A2 5 A3 2 A4 1 A5 4 と5桁の分ける場合、どうすればよいのでしょう? MID、RIGHT関数、と試してみましたが、どうも桁がずれたり、分かりません。 ちなみに数字の桁は変更がありますので、5桁の場合もあるし、3桁の場合もあります。あと、¥マークも付けたいと思っています。教えてください。

  • エクセルの文字列の指定(制限)設定について

    エクセルのひとつのセルに10桁の番号を入力するよう設定したい場合です。 (ちなみにエクセル2007です。) 多くても少なくても間違いで、必ず10桁にならないとエラーとなる、 1~6と9~10桁が数字、7・8桁にはアルファベットからなる番号なので、 それ以外のものが入力された場合はエラーとなる、 そういう設定はセルの書式設定か関数を用いて可能でしょうか? (「123456AA78」というような番号になります。)

  • エクセルの関数を教えてください

    エクセルの関数を教えてください。 あるセル(列単位です)に数字8ケタが入っていたら隣のセル(列)に◎◎◎(任意に設定)と表示されて、なにも入力されていなかったら空白表示にしたいのですがどうすればいいでしょうか?

  • エクセル ある文字列を入れるとある文字列を返す

    エクセルでの関数、ど素人です。一応自分で調べたのですが、無理なので質問させていただきます。よろしくお願いいたします。 エクセルで、時刻ですが文字列として1745~2345までを手入力します(1745,とか2000とか2330とか。。。。。) 入れた文字列によって、すぐ横のセルに1745、1800、1815であれば8.00、1830からは0.25刻みで8.25、1845であれば8.50、1900であれば8.75。。。。2330であれば13.25、2345であれば13.50と言ったように、入力した文字列に対しある特定の文字列を自動的に入れたいのですが、どのような関数を使えばよろしいのでしょうか。 私が行おうとしたのは、別シートに文字列一覧を作り、if(特定のセル(手入力するセル)=別シートの1745~2345まで、横のセル=別シートの8.00、8.00、8.00~13.50まで)や、sumif、lookupを使ってみましたが撃沈です。 どなたか教えていただきたく、お願いいたします。

専門家に質問してみよう