• ベストアンサー

Excel VBA等での処理方法

123             12345        123456 1234567 ↓ 0000123 0012345 0123456 1234567 VBAもしくは関数の処理で、A1に7と入れ場合、上記のように、A2以降が123であれば0000123、1234であれば0001234、1234567なら、そのまま1234567になるように更に文字列にするにはどうすればいいでしょうか?処理行は不特定です。 よろしくお願いします。

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

  • ベストアンサー
  • ebis
  • ベストアンサー率27% (17/61)
回答No.2

A1に7以外も入るとして 例えばB2に =REPT("0",A$1-LEN(A2))&A2 と入れて下の方にもコピーではどうでしょう。 字数の判定は入っていないので、 A1に入れた字数以上の数値の桁があった場合はエラーになります。

その他の回答 (2)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.3

色々方法があるので、一案です。 =RIGHT("0000000"&A2,7) A2セルの頭に0を7つ付けて、その文字の右から7文字を取得 みたいな関数です。 シート関数でもVBA上での関数でも使えます。

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

A列に数字がある場合 B列に下記の式を入れて、下にフィルコピー。 =TEXT(A1,"0000000") >更に文字列にするにはどうすればいいでしょうか? B列を選択して、コピー 右クリックから、「形式を選択して貼り付け」を選びます。 ダイアログボックスの「○ 値」を選択して、「OK」で文字になります。

関連するQ&A