我想检查文件夹中的所有文件名,如果所有文件名都包含B3的值(1.1),则返回“通过”;如果文件名之一不包含B3的值(1.1),则返回“失败”。
我已经尝试过以下代码,但是当文件名中任何一个包含B3的值(1.1)时,它将返回“ Pass”。
Found = Dir(Path & "\" & "*" & Range("B3") & "*")
If Found <> "" Then
Range("C3,C5").Interior.ColorIndex = 4
Else
Range("C3,C5").Interior.ColorIndex = 3
End If
答案 0 :(得分:0)
下面的示例遍历文件夹中的所有文件并检查其名称。如果其中一个不包含found
的值,则false
将是Range("B3")
,而如果所有文件的名称中都有found
,true
将是{ {1}}。
Sub Test()
Dim objFSO As Object
Dim objFolder As Object
Dim objFile As Object
Dim found As Boolean
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\testFolder")
found = True
For Each objFile In objFolder.Files
If InStr(objFile.Name, Range("B3")) = 0 Then
found = False
Exit For
End If
Next objFile
If found = True Then
Range("C3,C5").Interior.ColorIndex = 4
Else
Range("C3,C5").Interior.ColorIndex = 3
End If
End Sub
您可以使用要搜索的任何文件夹地址更改“ C:\ testFolder”。