• ベストアンサー

VBでCSVに書き込みをするには?

プログラム超初心者です。皆様教えて下さい。 りんご,2,100 いちご,4,500 このようなCSVファイルに VBにて 100 を 200 に書き換えるのには、どのようにすれば いいのでしょうか?splitで切り分けて書くようなイメージはあるのですが・・・ よろしくお願いします。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

>書き換えるのには シーケンシャルファイルは書き換えることはできません(しません)。 別のファイルを新たに作るのです。 メモ帳に(質問のデータ) りんご,2,100 いちご,4,500 を貼り付け、text7.csvとして保存。 Sub test01() Open "C:\Documents and Settings\XXX\My Documents\test7.csv" For Input As #1 Open "C:\Documents and Settings\XXX\My Documents\test8.csv" For Output As #2 r = 0 While Not EOF(1) Input #1, a, b, c r = r + 1 If r = 1 Then c = 200 End If Print #2, a; ","; b; ","; c Wend Close #1 Close #2 End Sub を実行し、メモ帳でtext8.csvを開くと りんご, 2 , 200 いちご, 4 , 500 となりました。 項目前後に1文字スペースが入るが、ダメなら、Line Input で読み Split関数で、Arrayに各項目を分離し、項目とカンマをPrintすればできるでしょう。 CSVファイルも2種ぐらいあります。 ファイルのパスのXXXの部分は適当に修正すること。