• ベストアンサー

EXCEL→CSV保存時のダブルクォーテーションについて

下記のようにEXCELマクロにてEXCELファイルをCSVファイルに保存しようとしています。 NewBook.SaveAs Filename:="test.csv", FileFormat:=xlCSV, CreateBackup:=False このとき、セル値にダブルクォーテーションが含まれていると、出力CSVファイルの値がダブルクォーテーションで囲まれてしまいます。 ●ダブルクォーテーションが含まれていない場合 セル値→A列:ABC     B列:DEF CSVファイル→ABC,DEF ●ダブルクォーテーションが含まれている場合 セル値→A列:A"C     B列:DEF CSVファイル→"A"C",DEF 後者の場合もダブルクォーテーションで囲まれないようにするにはどうすればよいでしょうか。

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

  • ベストアンサー
  • pauNed
  • ベストアンサー率74% (129/173)
回答No.2

こんにちは。 Sub sample() Dim s As String Dim r As Long, c As Long, i As Long, n As Long With Range("A1").CurrentRegion r = .Rows.Count c = .Columns.Count End With n = FreeFile Open "D:\test.csv" For Output As n For i = 1 To r s = Join(WorksheetFunction.Index(Cells(i, 1).Resize(, c).Value, 0), ",") Print #n, s Next i Close #n End Sub …な感じでしょうか。

mari_dora
質問者

お礼

やはり自分でCSV形式のデータを作成するしかなさそうですね。 ありがとうございました。

その他の回答 (1)

回答No.1

これじゃだめでしょうね。 Public Sub TEST() Open "C:\Test.csv" For Output As #1 Print #1, Range("A1"); ","; Print #1, Range("B1") Close #1 End Sub

関連するQ&A