'文件系统递归遍历
Private Sub DoRecursion(ByVal Source As String)
Dim f, fc
Set CurrFolder = FSys.GetFolder(Source)
If CurrFolder.Attributes <> (System Or Hidden Or Directory) Then
If CurrFolder.Files.Count > 0 Then
Set fc = CurrFolder.Files
For Each f In fc
If f.Attributes <> (System Or Hidden) Then
'do what you want
End If
Next
End If
'当前文件夹下还有子文件夹
If CurrFolder.SubFolders.Count > 0 Then
Set fc = CurrFolder.SubFolders
For Each f In fc
Call DoRecursion(f) '递归调用
Next
End If
End If
End Sub
'搜索文件夹
'事先添加引用:Microsoft Scripting Runtime
Private Sub Command1_Click()
Dim FSys As New FileSystemObject
Dim CurrFolder As Folder
Dim f As Folder
Dim fc As Folders
Set CurrFolder = FSys.GetFolder("D:\test")
Set fc = CurrFolder.SubFolders
For Each f In fc
If InStr(f.Name, "要搜索的文本") Then
'do what you want
End If
Next