[ VBA ] ファイルを追記モードで開いて書き込む(Open For Append)

Pocket

ここでは、VBAでファイルに追記モードで書き込むサンプルスクリプトを掲載しています。

スポンサーリンク

追記モードでファイルに書き込み

ファイルに追記モードで書き込むサンプルになります。詳細はサンプル内のコメントを参照ください。

    Dim fileNo As Long     ' ファイル番号
    Dim filePath As String ' ファイルパス
    Dim message As String  ' ファイル追記文字

    filePath = "c:\test.log"
    message  = "追記メッセージ"

    ' 未使用ファイル番号を取得
    fileNo = FreeFile

    ' 追記モードでファイルを開く
    Open filePath For Append As #fileNo
    ' ファイル追記
    Print #fileNo, message
    ' ファイルを閉じる
    Close #fileNo

ファイルへの書き込み(Print / Write関数)

上記のサンプルでは、ファイルの書き込みに Print関数を使用しています。なお、ファイルの書き込みには Print関数の他に、Write関数を使用することもできます。

ただし、Print関数は書式が設定されることなく、指定した文字列がそのままファイルに書き込まれる一方、Write関数には書式設定が行われ、次のような特徴があります。人によっては余計なお世話と感じるかもしれません。(;^_^A

  • 複数の文字列や数値を一度に出力できる(出力はカンマ区切りとなる)
  • BooleanやDate型は、#True# や #2017/07/24 9:22:35# のように出力される
  • 文字列がダブルコーテーションで囲まれて出力される
  • NULL 値は、#NULL# と出力される

余計なことに気を使いたくないのであれば、Print関数の方が制御しやすいでしょう。(多分・・・ですが)

スポンサーリンク


Pocket

Leave a Comment

Your email address will not be published. Required fields are marked *