我有一个VBA excel宏来搜索文件夹并将文件从任意子文件夹复制到另一个文件夹,它可以正常工作(你可以在下面找到它)。
<Elem {...{ x, y, z }} />
我想在宏搜索的文件夹中添加一个过滤器。我想跳过路径中包含字符串“2017”或“2G”的任何子文件夹,但字符串不是路径的最后一部分,请参阅下面的示例:
Sub Cloud_SII()
Application.ScreenUpdating = False
Call Pulisci_fogli
Dim FileSystem As Object
Dim HostFolder As String
HostFolder = "O:\EE\Flussi Del. 65-12\Cloud_SII"
Set FileSystem = CreateObject("Scripting.FileSystemObject")
DoFolder FileSystem.GetFolder(HostFolder)
End Sub
Sub DoFolder(Folder)
Dim SubFolder, File
For Each SubFolder In Folder.SubFolders
DoFolder SubFolder
For Each File In Folder.Files
If DateDiff("d", File.DateLastModified, Date) < 1 And File.Name Like "*zip*" Then
File.Copy "O:\EE\Flussi Del. 65-12\Cloud_SII_Smistatore\"
End If
Next
End Sub
有没有办法让代码跳过包含这些字符串的路径?
答案 0 :(得分:0)
您可以使用VBA函数INSTR
(reference)并检查您的文件夹名称是否包含这些字符串:
If InStr(1, SubFolder, "2G", vbTextCompare) > 0 Or
InStr(1, SubFolder, "2017", vbTextCompare) Then ...