筆箱にVBAのカンニングペーパーを入れる係のみすくです。こんにちは。
指定ディレクトリ配下(サブディレクトリを含む)すべてのファイルに処理をするコード。
‘ツール > 参照設定 > Microsoft Scripting Runtime
Option Explicit '--------------------------------------------------------------------------------------------------- '【処 理 名】ディレクトリ操作 '【処理概要】指定ディレクトリ配下のファイルすべてに処理 '【引 数】[I]ByVal sTopPath As String ディレクトリパス '【返 却 値】 なし '--------------------------------------------------------------------------------------------------- Public Sub scanDirectory(ByVal sTopPath As String) 'ツール > 参照設定 > Microsoft Scripting Runtime Dim oFso As New FileSystemObject 'ファイルシステムオブジェクト Dim oTopDir As Folder '先頭ディレクトリ Dim oDir As Folder 'ディレクトリ Dim oFile As File 'ファイル On Error GoTo Term '先頭ディレクトリオブジェクト取得 Set oTopDir = oFso.GetFolder(sTopPath) 'ディレクトリ配下のディレクトリパス名を取得する For Each oDir In oTopDir.SubFolders 'ショートカット以外 If oDir.Attributes <> Alias Then '再帰 Call scanDirectory(oDir.Path) End If Next 'ディレクトリ直下のすべてのファイル For Each oFile In oFso.GetFolder(sTopPath).Files 'ファイルごとの処理 'Debug.Print (oFile.Name) Next Term: Set oFso = Nothing Set oTopDir = Nothing Set oDir = Nothing Set oFile = Nothing End Sub
最近のコメント
コメントを残す