VBAで利用できる代表的な「ファイル操作関連の関数・ステートメント」を表にまとめました。
ファイルの存在確認、読み書き、削除、コピーなどを行う際に使います。
VBA ファイル操作 関数・ステートメント一覧
| 関数 / ステートメント | 内容・用途 | 使用例 | 結果例 |
|---|---|---|---|
| Dir | ファイルやフォルダの存在確認、一覧取得 | Dir("C:\Test\*.xlsx") | 最初の一致ファイル名を返す |
| FileLen | ファイルサイズ(バイト数)を返す | FileLen("C:\Test\sample.txt") | 1024 |
| FileDateTime | ファイルの最終更新日時を返す | FileDateTime("C:\Test\sample.txt") | 2025/11/2 09:30 |
| GetAttr | ファイルやフォルダの属性を取得 | GetAttr("C:\Test\sample.txt") | vbNormal, vbReadOnly 等 |
| SetAttr | ファイルやフォルダの属性を設定 | SetAttr "C:\Test\sample.txt", vbReadOnly | 読取専用に変更 |
| Kill | ファイルを削除 | Kill "C:\Test\sample.txt" | ファイル削除 |
| Name | ファイル名やフォルダ名を変更 | Name "C:\Test\a.txt" As "C:\Test\b.txt" | a.txt → b.txt |
| MkDir | 新しいフォルダを作成 | MkDir "C:\Test\NewFolder" | フォルダ作成 |
| RmDir | 空のフォルダを削除 | RmDir "C:\Test\OldFolder" | フォルダ削除 |
| CurDir | 現在のカレントディレクトリを返す | CurDir | 例: “C:\Users\User” |
| ChDir | カレントディレクトリを変更 | ChDir "C:\Test" | 作業フォルダ変更 |
| ChDrive | カレントドライブを変更 | ChDrive "D" | Dドライブに切替 |
| FreeFile | ファイル番号を返す(Open文で使用) | n = FreeFile | 利用可能な番号 |
| Open / Close | ファイルを開く/閉じる | Open "C:\Test\log.txt" For Output As #1 | 書込用に開く |
| Input / Line Input | ファイルからデータを読み込む | Line Input #1, strLine | 1行読み込み |
| Print / Write | ファイルにデータを書き込む | Print #1, "Hello" | テキスト出力 |
| EOF | ファイルの終端判定 | Do Until EOF(1) | ファイル末尾まで処理 |
✅ ポイント
- 存在確認・一覧取得 →
Dir - 属性取得・変更 →
GetAttr/SetAttr - 削除・名前変更 →
Kill/Name - フォルダ操作 →
MkDir/RmDir/ChDir - ファイル読み書き →
Open/Close/Input/Print - サイズ・更新日時 →
FileLen/FileDateTime
💡 実務では「Dirで存在確認 → Openで読み書き → FileDateTimeで更新日時チェック → Killで削除」といった流れがよく使われます。
