目次
ファイルに1行ずつ文字列を出力するマクロテンプレート
上書き型出力の場合
Sub sample()
Dim outputFile As String
outputFile = "<出力先ファイルパス>"
Open outputFile For Output As #1
Print #1, "<出力文字列>"
Close #1
End Sub
追記型出力の場合
Sub sample()
Dim outputFile As String
outputFile = "<出力先ファイルパス>"
Open outputFile For Append As #1
Print #1, "<出力文字列>"
Close #1
End Sub
以下で詳しく解説します。
ファイルに1行ずつ文字列を出力するための手順
テキストファイルに1行ずつ文字列を出力するためには以下の手順を実施します。
- 出力対象のテキストファイルを開く
- 1行ずつ文字列を対象ファイルに出力する
- 出力対象のテキストファイルを閉じる
①③出力対象のファイルを開く/閉じる
出力対象のファイルを開く
出力対象のファイルを開くためには以下のように記述します。
Sub sample()
Dim outputFile As String
outputFile = "<出力先ファイルパス>"
Open outputFile For <Output または Append> As #1
End Sub
2つの出力形式
出力対象のファイルが存在しなかった場合、新規にファイルが作成された上でテキストが出力されます。一方で、出力対象のファイルが存在する場合、出力形式として2種類の方法があります。
2種類の出力形式と、その形式でファイルを開くための構文は以下です。
出力対象のファイルを閉じる
テキストの出力を終えたら対象ファイルを閉じます。
Close #1
②1行ずつ文字列を対象ファイルに出力する
対象ファイルを開いている状態で1行ずつ文字列をファイルに出力します。
Sub sample()
Dim outputFile As String
outputFile = "C:\Users\share\Desktop\folder\test.txt"
Open outputFile For Output As #1
Print #1, "hogepiyofuga"
Close #1
End Sub
以下が文字列を1行ファイルに出力する文です。
Print #1, "hogepiyofuga"
複数行出力したい場合は上記 Print 文を複数記述します。
Sub sample()
Dim outputFile As String
outputFile = "C:\Users\share\Desktop\folder\test.txt"
Open outputFile For Output As #1
Print #1, "hogepiyofuga 1行目"
Print #1, "hogepiyofuga 2行目"
Print #1, "hogepiyofuga 3行目"
Close #1
End Sub
上記マクロを実行すると、出力ファイルの内容は以下のようになります。
hogepiyofuga 1行目
hogepiyofuga 2行目
hogepiyofuga 3行目
なお、Print 文の出力文字列部分を変数に置き換えても問題ありません。
Sub sample()
Dim outputFile As String
Dim mojiretsu As String
outputFile = "C:\Users\share\Desktop\folder\test.txt"
Open outputFile For Output As #1
mojiretsu = "hogepiyofuga"
Print #1, mojiretsu
Close #1
End Sub
【Excel VBA】テキストファイルの内容を変数に読み込むマクロ(全文一括)
【テキストファイルの内容を変数に読み込む】 ここではテキストファイルを開きその内容全文を一つの変数に格納する方法について記載します。 【テキストファイルの内容...
Excel VBA マクロ作成用情報まとめ
【初学者向け情報】 【Excel VBA】初心者からマクロを作成できるようになるまでの学習ロードマップ 【Excel VBA マクロ独学者・初心者向け】VBA 学習の第一歩【このペー...