プロが教えるわが家の防犯対策術!

かなり、困っております・・・。

「c:\csv_data」に複数のcsvデータが入っており、csvに含まれている
"00ABC"を"00000"に変換させたいです。
(フォルダ内の全てのcsvを変換させたいです)
一度作ってみたんですが、Excel-VBAでCSVファイルを開いて編集をかけると書式が失われてしまう為、だめでした・・・。
そこで
・Excel-VBAでの良い方法
・BATファイルで拡張子csv⇒txtに開いてからの編集⇒csvへ
といった2つの方法(どちらか)がであれば作業工程上、他の処理と同時に
自動化できることからこの2つの方法での文字列変換方法を知りたいです。

A 回答 (2件)

私が同様の問題で処理した手順です。



まず、念の為に元ファイルからコピーを作成します。
コマンドプロンプトを起動して、以下のコマンドを使って
CSVファイル全部の拡張子をTXTに置き換えてコピーします。
xcopy c:\csv_data\*.csv c:\copy\*.txt

次にフリーの文字列置換ソフトを使って、
C:\copy内の全てのtxtの文字列を置換します。
(私の場合は「みやぐれっぷ」を使いました。)
(参考URLは「みやぐれっぷ」の作者様のHPです。)

最後に拡張子TXTをCSVに戻します。
xcopy c:\copy\*.txt c:\result\*.csv

作業が終わったら
c:\copyはもう用済みなのでエクスプローラーで削除
c:\result内の全てのファイルをc:\csv_dataに上書きさせる
c:\resultはもう用済みなのでエクスプローラーで削除

No1の人と比べるとめんどくさいw

参考URL:http://www.bea.hi-ho.ne.jp/marbo/
    • good
    • 1

参考 URL のプログラムを使って


BAT ファイルで一括全置換できると思います。

for %%i IN *.csv DO chikan %%i 00ABC 00000

などで。
for 文について詳しくはコマンドプロンプトで確認してください(for /?)

参考URL:http://www.vector.co.jp/soft/win95/util/se271454 …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています