CSVファイルの作成とテキスト書き込み
CSVファイルを出力する時のコード。
Sub sample()
' 変数の宣言
Dim strCsvFileName
Dim strLine
' CSVファイルのフルパス作成
strCsvFileName = ActiveWorkbook.Path & "\サンプルデータ_" & Format(Now, "_yyyymmddHHMMSS") & ".csv"
' CSVファイルを開く
Open strCsvFileName For Output As #1
' 1行追記(ヘッダの出力などでよく使う)
Print #1, "No,氏名,電話番号" & vbCrLf;
For i = 1 To 2
strLine = ""
strLine = i & ","
strLine = "さんぷる 太郎" & ","
strLine = "090-0000-1111" & ","
' 1行追記
Print #1, strLine & vbCrLf;
Next i
' CSVファイルを閉じる
Close #1
End Sub
下記データがCSVに出力される。
1,さんぷる 太郎,090-0000-1111
2,さんぷる 太郎,090-0000-1111
ActiveWorkbook.Path → マクロが動いているExcelファイルがあるフォルダパス(絶対パス)
Print → 1行出力。最後には必ず『vbCrLf;(改行コード)』
改行コードがないと同じ行の末尾にデータがずらーーーーーっと追加されて出力される
CSV形式で出力する場合は項目の区切り文字は『,(カンマ)』
処理前後のOpenとCloseを忘れないように!
Openでファイルが作成される。
Closeしないとファイルが読み取り専用のままになる。
自分の備忘録としてコードのみ記載。この記述方法だけが正ではないので参考程度に。