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

こんにちは。早速ですが、質問です。

VBAを使ってcsvファイルをエクセルに読み込んで、
読み込んだエクセル上でcsvファイル情報を変更すると、
変更した内容が読み込み元のcsvファイルに更新される
ようなプログラムを作りたいのです。csvファイルの
読み込みまではうまくいったのですが、csvファイルの
更新の仕方がわかりません。良い方法があれば、
教えてください。よろしくお願いします。

A 回答 (3件)

CSVの仕様にもよりますね。


二重引用符を付けたり、細かい仕様がある場合は、シーケンシャルファイルをOpen(for output)して、セルのデータを1つずつ(For-Nextでまわして)、Print #nで出力しています。
この場合、二重引用符(Chr(34))やカンマ、改行も意識して入れる必要がありますが、必要な仕様にあわせることができるのです。
ファイルはやはり、バックアップ(Name)してから上書きします。
では!
    • good
    • 0
この回答へのお礼

詳しい回答ありがとうございました。

お礼日時:2004/03/02 15:05

CSVファイルは、シーケンシャルファイルで(<->ランダムファイル)、「更新」は出来ないと思います。


1文字だけ変えても新しいファイルに、変えない部分も含め、すべてを別ファイルに書き替えないといけないと思います。そして旧ファイルを削除し、別ファイルを旧ファイル名に変更するということになるかと思います。
更新と言うイメージと用語に注意してください。
    • good
    • 0
この回答へのお礼

更新は出来ないということですか。すべて書き換えるしかないのですね。わかりました。ありがとうございました。

お礼日時:2004/03/02 15:04

CSV を読み込んだ Workbook オブジェクトを wb とすると


wb.Save
でいいと思うんですけど・・・。
    • good
    • 0
この回答へのお礼

他の人の回答を見る限りでは、そう簡単ではないようですね。回答ありがとうございました。

お礼日時:2004/03/02 15:03

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