我从网上的某个地方获得了这个代码,它对我来说很好。但是我的经验不足以在主要子文件夹的所有子文件夹中运行它(" C:\ Folder \")。我很感激任何建议。
Sub check()
Dim strFolder As String
Dim strFile As String
strFolder = "C:\Folder\"
strFile = Dir(strFolder & "*.*")
Do While Len(strFile) > 0
If InStr(strFile, "xxx") > 0 Then
Name strFolder & strFile As strFolder & Replace(strFile, "xxx", "yyy")
End If
strFile = Dir()
Loop
End Sub
答案 0 :(得分:0)
您最好使用System.IO命名空间(您需要为其添加Imports语句),因为有一个Directories.GetFiles方法允许选择在其中搜索AllDirectories你指定的文件夹
Imports System.IO;
Sub Check()
Dim strFolder As String = "C:\Folder\"
Dim strFiles() As String = Directory.GetFiles(strFolder, "*.*", SearchOption.AllDirectories)
For Each strFile As String In strFiles
If strFile.Contains("xxx") Then
File.Move(strFolder & strFile, strFolder & strFile.Replace("xxx", "yyy"))
End If
Next
End Sub