- ベストアンサー
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 後者の場合もダブルクォーテーションで囲まれないようにするにはどうすればよいでしょうか。
- みんなの回答 (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 …な感じでしょうか。
その他の回答 (1)
- otto0001otto
- ベストアンサー率25% (64/249)
これじゃだめでしょうね。 Public Sub TEST() Open "C:\Test.csv" For Output As #1 Print #1, Range("A1"); ","; Print #1, Range("B1") Close #1 End Sub
お礼
やはり自分でCSV形式のデータを作成するしかなさそうですね。 ありがとうございました。