VBA 指定フォルダ内のファイル名取得

一括でファイル処理する時によく利用します。
DIRを使った方法とFileSystemObjectを使った方法を紹介します。
サンプルプログラムは、「C:\data\」に保存しているファイルのフルパスやファイル名をメッセージボックで表示させるプログラムです。

FileSystemObjectを利用した方法

FileSystemObjectの参照方法はこちらから。

Sub work()
    Dim fs As New FileSystemObject
    Dim TargetFolder As String
    
    For Each f In fs.GetFolder("C:\data\").Files 'フォルダ内のファイル取得
        MsgBox(f.Path) 'ファイル名フルパスをメッセージボックスで表示
        MsgBox(f.Name) 'ファイル名をメッセージボックスで表示
     ''本来はここでファイルを読み込んだりする処理を入れたりします
    Next f
End Sub

 fs.GetFolder(“C:\data\”).Files

「fs.GetFolder(“C:\data\”).Files」でc:\data\内のファイル情報を取得する。

DIRを利用した方法

Sub work()
    Dim TargetFolder As String
    TargetFolder = "C:\data\" ’ディレクトリ指定
    Dim Tfile As String
   
    Tfile = Dir(TargetFolder) 'ディレクトリ内にある最初のファイルを取得
    Do While Tfile <> ""
        MsgBox(Tfile) 'ファイル名をメッセージボックスで表示
        Tfile = Dir() '指定ディレクトリ内にある次のファイル取得
    Loop
End Sub
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク