という依頼。
デリミタ(,)を入れたcsvだったら簡単にできるのに…
他のシステムへ取り込むのにエクセルでデータが来る。
取り込み側は固定長。
数字だけなら、text関数を使って桁を埋めたりできるけど、文字もあり、空白で埋めなきゃなので関数だけのやり方がわからん。
即席マクロで対応。
len(range("セル名"))
で、文字列を確認できるから、
range("セル名").value & space(固定長文字数 - len(range("セル名"))) で、セル単位で固定長に。
これを応用して作った。
これは応急処置。
今後もマクロで対応することが決定したら、色々とエラー制御が必要になる。
列が移動された場合の対応だったり、最終行の取得方法だったり、やっぱり実処理以外が肝心。
実処理だけだったら5行で済むのに、エラー検知とかコメント書いたり、コードが数倍になる。
固定長への出力って、何か簡単に出来る方法あるのかな?
-----------------------------
2010/03/30追記)
あまり良いのが無かったので作りました。
http://grot3.sblo.jp/article/36765995.html
2010年02月09日
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/35228564
この記事へのトラックバック
http://blog.sakura.ne.jp/tb/35228564
この記事へのトラックバック