• ベストアンサー

エクセルでセルの桁数の変更について

エクセルで、A列に、A-1、A-2・・・・・A-10、前-1、前-2・・・・前-10のように入力してあります。 この数字を、A-001・・・A-010、前-001・・・前-010というように、文字の後の数字を3桁に変えたいのですが出来ますでしょうか?

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

  • ベストアンサー
  • tamiemon96
  • ベストアンサー率49% (658/1341)
回答No.5

(1) A列を、B列とC列にコピーします。 (2) B列全体を指定して 「編集」 ⇒ 「置き換え」 検索する文字列 「-*」 置き換え後の文字列「-」   これで Br列は A- とか 前- だけになります。 (3) C列全体を指定して 「編集」 ⇒ 「置き換え」 検索する文字列 「*-」 置き換え後の文字列「」   これでC列は数字だけになります。 (4) D列にドラッグで一連番号を振っておきましょう   あとで、並べなおしができます。 (5) C列基準でソートをかけましょう。 (6) E列に文字列関数 「=CONCATENATE」で、    Cが1桁なら B と 00 と Cを    Cが2桁なら B と 0  と Cを    Cが3桁なら B と      Cを   くっつければ出来上がり あとは、値だけコピーで答えを取り出す。 D列でソートして、元の順番にもどす 要らない列を抹消する ってところでしょうか。

macdermot
質問者

お礼

ありがとうございます。 出来ました。 エクセル初心者の私には、この方法が一番分かりやすかったので、ベストアンサーとさせてもらいます。 答えてくださった方、どうもありがとうございました。

その他の回答 (4)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 変換後の文字列を表示させる列の1行目のセルに、次の関数を入力してから、そのセルをコピーして、2行目以下に貼り付けると良いと思います。 =IF(ISNUMBER(REPLACE($A1,1,FIND("-",$A1),)+0),LEFT($A1,FIND("-",$A1))&TEXT(REPLACE($A1,1,FIND("-",$A1),)+0,"000"),"")

macdermot
質問者

お礼

できました! ありがとうございます!

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

こんばんは! 色々方法はあるかと思いますが・・・ 一例です。 A1セルからデータがあり、B列に表示させるとします。 尚、ハイフン以降の数値は最大3桁までとします。 B1セルに =IF(A1="","",LEFT(A1,FIND("-",A1))&TEXT(MID(A1,FIND("-",A1)+1,3),"000")) としてオートフィルで下へコピーではどうでしょうか? ※ A列にこのデータを表示させたい場合は B列すべてを範囲指定 → 右クリック → コピー → 形式を選択して貼り付け A1セルを選択 → 「値」にチェックを入れOK その後、B列は削除しても大丈夫です。 こんなんではどうでしょうか?m(_ _)m

macdermot
質問者

お礼

できました! ありがとうございます!

noname#146007
noname#146007
回答No.2

A-001と入力して A-001のセルにカーソルをおく セルの右下の小さな黒い■をつまみながら下へドラッグ それで連番になりませんかね。 --------- | A-001 | --------■ ←セルの右下隅を左クリック釦押しながら       ドラッグ(下のセルへ下ろしていく)

macdermot
質問者

お礼

すいません、質問がうまく出伝えられなかったようです。 No.1の回答の補足のようにしたかったのです。

  • meitoku
  • ベストアンサー率22% (2258/10048)
回答No.1

A-1をA-001と入力してセルの右下を左クリックしたまま下にずらせば順にA-002~になりますが。

macdermot
質問者

補足

すいません、質問間違いました。 まずA-1や前-1のようなセルが順番になっていなく、A-1、前-8、A-3のように順番がバラバラに入力されています。 これらを並べ替えした時に、連番で並べ替えたかったのですが、A-6、A-65、A-7、A-8、A-85のようになってしまい、うまく並べ替えが出来なかったので、数字の部分だけ3桁などにすればうまく並べ替えられるかと思ったのですが、やり方が良く分からなかったので質問しました。