Sub sample()
Dim inputFile As String
Dim readLine As String
inputFile = "<ファイルパス>"
Open inputFile For Input As #1
Do Until EOF(1)
Line Input #1, readLine
Loop
Close #1
End Sub
以下で詳しく解説します。
テキストファイルの内容を1行ずつ読み込む手順
テキストファイルの内容を1行ずつ読み込むためには以下の手順を実施します。
対象のテキストファイルを開く
開いたテキストファイルを1行目から順に最終行まで読み込む
対象のテキストファイルを閉じる
①③対象のテキストファイルを開く/閉じる
テキストファイルを開く/閉じるマクロは以下です。
Sub sample()
Dim inputFile As String
inputFile = "C:\Users\share\Desktop\folder\test.txt"
Open inputFile For Input As #1
Close #1
End Sub
Dim inputFile As String
inputFile = "C:\Users\share\Desktop\folder\test.txt"
以下の行では対象のテキストファイルを開いています。
Open inputFile For Input As #1
テキストファイルを開く構文
Open <ファイルパス> For Input As #<ID番号>
以下の行では対象のテキストファイルを閉じています。
Close #1
テキストファイルを閉じる構文
Close #<ID番号>
<ID番号> はテキストファイルを開く構文で指定した ID と一致させる
②テキストファイルを1行ずつ読み込む
対象のテキストファイルを開いている状態でテキストファイルを1行ずつ読み込みます。
以下のように記述することで開いているテキストファイルを1行ずつ最終行まで読み込むことができます。
Sub sample()
Dim inputFile As String
Dim readLine As String
inputFile = "C:\Users\share\Desktop\folder\test.txt"
Open inputFile For Input As #1
Do Until EOF(1)
Line Input #1, readLine
Loop
Close #1
End Sub
以下の Do ~ Loop のかたまりでは、対象のテキストファイルを1行ずつ読み込み、その内容を変数 readLine に格納しています。条件式に Until EOF(1) と指定することで「最終行まで読み込むまで」という条件にすることができます。
Do Until EOF(1)
Line Input #1, readLine
Loop
テキストファイルを1行読み込み変数に格納する構文
Line Input #<ID番号>, <格納先変数名>
<ID番号> はテキストファイルを開く構文で指定した ID と一致させる
実行例
以下のマクロは、指定のテキストファイルを1行ずつ読み込み、シート上のセルに順に内容を保存します。
Sub sample()
Dim inputFile As String
Dim readLine As String
Dim i As Integer
inputFile = "C:\Users\share\Desktop\folder\test.txt"
Open inputFile For Input As #1
i = 0
Do Until EOF(1)
Line Input #1, readLine
i = i + 1
ThisWorkbook.Sheets("Sheet1").Cells(i, 1).Value = readLine
Loop
Close #1
End Sub