• ベストアンサー

EXCEL VBAにて計算結果にゼロ埋め対応したい

EXCELのVBAにて手入力された値から文字結合を行い、csvとしてC:直下に吐きだすプログラムを作成しました。 しかし、入力された値を結合するだけでなく、結合するときに 最終レコードにレコード件数(6バイト)とバイト数(8バイト)(レコード件数×256)で表示させたいのです。 また、計算結果のレコード件数とバイト数はゼロ埋めで対応したいです。 現状は手入力で文字列として適当にレコード件数、バイト数をいれています。 どなたかに力をお借りしたいです。 宜しくお願いします。

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

  • ベストアンサー
  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.3

>文字結合をしたときに、そのゼロが付け足されません・・・。 数値を単に文字変換して結合しているからです。 セルを参照するときは、そのセルの表示形式は無視されます。 レコード件数をどうやって算出しているか分かりませんが、 例えば、ROW()で求められるなら(ROW関数はその行の行番号を返します)、 TEXT関数を使って、 =TEXT(ROW(),"000000")&TEXT(ROW()*256,"00000000") とするか、または、 =ROW()*(100000256) として、表示形式をユーザー定義で 00000000000000 とすればいいでしょう。

NAS_2011
質問者

お礼

ゼロ埋め対応できました。しっていれば割と簡単なことでしたね・・・。 どうもありがとうございます。

その他の回答 (2)

  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.2

>たとえば、レコード件数を出したあとに、その数にゼロ埋めを付け足すことは可能ですか? セルの表示形式を、ユーザー定義で 000000 のようにしてみてはどうですか。

NAS_2011
質問者

補足

それは初めに考えました。しかし、 文字結合をしたときに、そのゼロが付け足されません・・・。

  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.1

参考用だとしても、ファイルをダウンロードさせるのはやめたほうがいいですよ。 万一ウィルスが入っているかもと思うとダウンロードなんて恐くてできません。 このファイルがということではなく、悪意を持った人ならウィルスを入れることは可能ですので。

NAS_2011
質問者

補足

失礼しました。質問の編集方法がわからないため、URLは放置します。 たとえば、レコード件数を出したあとに、その数にゼロ埋めを付け足すことは可能ですか?

関連するQ&A

専門家に質問してみよう