ピナクルのくるくるパソコン術

みんなが使えるパソコン術を提供します。

【VBA】テキストファイルを書き込む


VBAでテキストファイルを書き込む方法を紹介します。

* 説明

①ファイルを開くにはOpenステートメントを利用する。

 Open ファイル名 For ファイル モード Access ファイルの開き方 As ファイル番号
           
説明
ファイル名 開けるファイル名を指定する文字列 C:\temp\test.txt
ファイル モードファイル モードを指定する キーワード
 Append
 Binary
 Input
 Output
 Random
Binary
ファイルの開き方開いたファイルに対して許可される操作を指定するキーワード
 Read
 Write
 Read Write
Read
ファイル番号有効なファイル番号
次に使用可能なファイル番号を取得するには、FreeFile 関数を使用する
1

docs.microsoft.com

②Openステートメント用に、有効なファイル番号を取得する。

Dim lFNum As Integer
lFNum = FreeFile

docs.microsoft.com

③ファイルにテキストを書き込む

Print ファイル番号(①で指定した番号),  書き込む文字列

docs.microsoft.com

④ファイルを閉じる

Close ファイル番号

docs.microsoft.com

* おまけ

使いやすいように関数化してみました。

Sub WriteTextFile(aFilePath As String, aText As String)

    '②有効なファイル番号を取得する
    Dim lFNum As Integer
    lFNum = FreeFile
    
    '①指定ファイルを開く
    Open aFilePath For Output Access Write As #lFNum
    
    '③ファイルにテキストを書き込む
    Print #lFNum, aText
    
    '④ファイルを閉じる
    Close #lFNum

End Sub

下記のように呼び出して使えます。

Sub WriteTextriteText()
    Dim lWPath As String
    lWPath = "C:\temp\Write.txt"
    Dim ltxt As String
    ltxt = "書き込む文字列"
    Call WriteTextFile(lWPath, ltxt)
End Sub

ぜひ使ってみてください!