• ベストアンサー

CSVでファイルを出す方法

excelにデータをVBAを使い書き出しています。例えば、 cells(行1、列1).Value=data1 cells(行1、列2).Value=data2 cells(行1、列3).Value=data3 cells(行2、列1).Value=data4 cells(行2、列2).Value=data5 ...... と1行書き込んだら次の行へ、次の行へといった具合に書き込んでいます。 excelなので直接セルを指定して書き込むことができていますが、excelの かわりにcsvとして書き込みをしたい場合、どのような処理をしてテキストに 出せばよいのでしょうか?

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

  • ベストアンサー
  • hotosys
  • ベストアンサー率67% (97/143)
回答No.2

こんなのはどうでしょうか? そのままcsv形式で保存すると自分自身がcsvになるので、前もって新しいBookにコピーして保存します。 書き出すシートがSheet1の場合です。 Sub sample() Sheets("Sheet1").Copy ActiveWorkbook.SaveAs FileFormat:=xlCSV, Filename:="C:\sample.csv" ActiveWorkbook.Close SaveChanges:=False End Sub

その他の回答 (1)

  • ecogilis
  • ベストアンサー率60% (12/20)
回答No.1

vbaでということでしたら、VBAにはファイル操作関連のステートメントが用意されていますのでそれを利用したらどうでしょうか。 その場合には、大体、Openステートメントでファイルを開いて、Printステートメントなどでファイル書き出しを行い、Closeでファイルを閉じるという流れになります。 Excel付属のVBAのヘルプを見るとステートメントや関数という形で、基本機能が書かれています。

関連するQ&A