VBAでテキストファイルの操作
VBAでテキストファイルの操作
FileSystemObjectを使用する場合
'入力---------------------------------------------------- ' "MS Scripting Runtime"の参照設定が必要 Dim fso As New FileSystemObject ' FileSystemObject Dim ts As TextStream ' TextStream Set ts = fso.OpenTextFile(in_file_path, ForReading) Dim buf As String Do Until ts.AtEndOfStream buf = ts.ReadLine Loop ts.Close Set ts = Nothing Set fso = Nothing '出力---------------------------------------------------- ' "MS Scripting Runtime"の参照設定が必要 Dim fso As New FileSystemObject ' FileSystemObject Dim ts As TextStream ' TextStream Set ts = fso.CreateTextFile(out_file_path, True) ts.WriteLine buf ts.Close Set ts = Nothing Set fso = Nothing ' ※※※※※※※※※※※※※※※※※※※※※※※※※※※ ' "MS Scripting Runtime"の参照設定をしていない時は ' FileSytemObjectとTextStreamの宣言は以下のようにする 'Dim fso As Object ' FileSystemObject 'Set fso = CreateObject("Scripting.FileSystemObject") 'Dim ts As Object ' TextStream ' ※※※※※※※※※※※※※※※※※※※※※※※※※※※
Open を使う場合
Dim buf As String Dim f_num As Long: f_num = FreeFile 'ファイルのインデックス '入力---------------------------------------------------- Open in_file_path For Input As f_num Line Input #f_num, buf '1行読み込み(一括読み込み) Loop Close f_num '出力---------------------------------------------------- ' ※追記の場合はOutputをAppendに変更する Open out_file_path For Output As f_num Print #f_num, buf 'テキストを出力 Loop Close f_num
参考
TextStream ファイルを読み込む(Read,ReadLine,ReadAll) | ExcelWork.info