Windows環境でファイル管理をしていると、「このフォルダのファイル一覧を取得したい」「更新日時やサイズを確認したい」と思うことはありませんか? そんなときに役立つのが、VBScriptによるファイル情報の自動取得です。
今回は、指定したフォルダ配下のファイルについて、以下の情報を一覧で出力するVBScriptのサンプルコードを紹介します。
- ファイル名
- 作成日時
- 更新日時
- ファイルサイズ(バイト)
すぐに使えるよう、丁寧に解説していきます。
VBScriptとは?
VBScript(Visual Basic Script)は、Microsoftが開発した軽量スクリプト言語です。Windowsに標準搭載されており、インストール不要で使えるのが特徴です。
主な用途は以下の通り:
- ファイル操作(コピー、削除、移動など)
- アプリケーションの制御
- 業務の自動化(バックアップ、ログ整理など)
PowerShellやPythonが主流になりつつありますが、VBScriptは「軽くてすぐ動く」「社内環境で使いやすい」といった利点があり、今でも多くの現場で活用されています。
ファイル情報を一覧出力するVBScript
それでは、実際のコードを見てみましょう。以下のスクリプトは、指定したフォルダ内のすべてのファイルについて、ファイル名・作成日時・更新日時・サイズを表示します。
サンプルコード
vbscript
Option Explicit
Dim folderPath, objFSO, objFolder, objFile
Dim message
folderPath = "C:\Test" ' ← ここを任意のフォルダパスに変更してください
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists(folderPath) Then
Set objFolder = objFSO.GetFolder(folderPath)
message = "ファイル情報一覧(フォルダ:" & folderPath & ")" & vbCrLf & _
"---------------------------------------------" & vbCr
For Each objFile In objFolder.Files
message = message & _
"ファイル名: " & objFile.Name & vbCrLf & _
"作成日時: " & objFile.DateCreated & vbCrLf & _
"更新日時: " & objFile.DateLastModified & vbCrLf & _
"サイズ(バイト): " & objFile.Size & vbCrLf & _
"---------------------------------------------" & vbCr
Next
WScript.Echo message
Else
WScript.Echo "指定されたフォルダが存在しません!"
End If
実行方法
- メモ帳を開く
- 上記コードを貼り付ける
list_files.vbs
などの名前で保存(拡張子は.vbs
)- 保存したファイルをダブルクリックして実行
■実行結果例

応用ポイント
このスクリプトは、以下のような場面で活用できます:
- 定期的なファイル棚卸し:更新されていないファイルの洗い出し
- ログファイルの確認:サイズが大きくなっているファイルの特定
- バックアップ前のチェック:作成日時や更新日時を確認してからコピー
さらに、出力結果をCSV形式にして保存すれば、Excelでの分析も可能です。
CSV形式で保存するには?
以下のようにコードを変更すれば、結果をCSVファイルとして保存できます。
vbscript
Option Explicit
Dim folderPath, objFSO, objFolder, objFile
Dim outputFile
Dim objTextFile
folderPath = "C:\Test" ' ← ここを任意のフォルダパスに変更してください
outputFile = folderPath & "\file_list.csv" ' ← 出力するCSVファイル名
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists(folderPath) Then
Set objFolder = objFSO.GetFolder(folderPath)
Set objTextFile = objFSO.CreateTextFile(outputFile, True)
objTextFile.WriteLine "ファイル名,作成日時,更新日時,サイズ(バイト)"
For Each objFile In objFolder.Files
objTextFile.WriteLine objFile.Name & "," & objFile.DateCreated & "," & objFile.DateLastModified & "," & objFile.Size
Next
objTextFile.Close
WScript.Echo "CSVファイルを作成しました:" & outputFile
Else
WScript.Echo "指定されたフォルダが存在しません!"
End If
このようにすれば、CSVファイルが作成され、CSVファイルをExcelで開いて並び替えやフィルタが可能になります。
■実行結果ファイル例

注意点
- フォルダパスは正確に指定すること:存在しないパスだとエラーになります。
- ファイル数が多いと時間がかかる:大量のファイルがある場合は、処理時間に注意。
- 管理者権限が必要な場合もある:一部のフォルダではアクセス権限が必要です。
まとめ
VBScriptを使えば、Windows環境でのファイル管理が劇的に効率化できます。今回紹介したスクリプトは、初心者でもすぐに使える実用的な内容です。
- ファイル一覧の取得
- 作成日時・更新日時・サイズの確認
- CSV形式での保存
これらを組み合わせれば、業務の自動化や情報整理が簡単に実現できます。ぜひ、試してみてください!