- ベストアンサー
CSV出力について
- Do Until EOF(1)を使用して、CSVファイルからデータを読み込みます。
- 読み込んだデータを編集し、ダブルコーテーションなしで出力する方法を教えてください。
- VB6を使用しています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
123,xyz ,abc 次は、このように出力するサンプルコードです。 Private Sub Command1_Click() Dim N As Integer Dim x(2) As String Dim strText As String x(0) = "123" x(1) = "xyz " x(2) = "abc" strText = Join(x(), ",") N = FreeFile Open "C:\Temp\Test1.csv" For Output As #N Print #N, strText Close #N End Sub Private Sub コマンド0_Click() Dim x(2) As String x(0) = "123" x(1) = "xyz " x(2) = "abc" FileWrite "C:\Temp\Test2.csv", Join(x(), ",") End Sub 非手続き的に書けるのは後者です。 Microsoft scripting runtime を参照する必要があります。 なお、 FileWrite 関数は、次のようです。 Public Function FileWrite(ByVal FileName As String, _ ByVal Text As String) As Boolean On Error GoTo Err_FileWrite Dim fso As FileSystemObject Dim txs As TextStream Set fso = New FileSystemObject Set txs = fso.CreateTextFile(FileName, True) txs.Write Text FileWrite = True Exit_FileWrite: Exit Function Err_FileWrite: MsgBox Err.Description & "(FileWrite)", vbExclamation, " 関数エラーメッセージ" Resume Exit_FileWrite End Function
その他の回答 (1)
- Hayashi_Trek
- ベストアンサー率44% (366/818)
Write ではなくPrint を使う。 Print #1, x01; ","; x02; ","; x03 ヘルプを見れば(Writeにカーソルを置いて、F1キーを押す) 1分で判るのに。