hakeの日記

Windows環境でプログラミングの勉強をしています。

EXCEL VBAメモ - テキストファイルアクセス

ファイルハンドル?は、#1などと番号を指定しても良いが、FreeFileで空いている番号を取得することもできる。

Sub accessTextFile()
    Dim fNo As Long
    Dim fName As String
    Dim s As String
    
    fNo = FreeFile
    fName = ThisWorkbook.Path & "\sample.txt"
    
    ' 1行ずつ書き込み
    Open fName For Output As #fNo ' 追加の場合はAppend
    Print #fNo, "1行目"
    Print #fNo, "2行目"
    Close #fNo
    
    ' 1行ずつ読み込み
    Open fName For Input As #fNo
    Do Until EOF(fNo) ' #は不要
        Line Input #fNo, s ' 1行読み取り
        MsgBox s
    Loop
    Close #fNo
End Sub