我有一个宏,它遍历文件夹并使用“dir”函数来找出活动文件夹中是否存在文件,并将文件名放在单元格中。
问题是它可能是两个或多个文件满足搜索。
Dir(subfolder & "\Kommunesvar*")
如果有两个以“Kommunesvar”开头的文件,如何在指定的子文件夹中同时获得两个结果?Dir 返回文件名,但我都想要。
你怎么用DIR
。下面的代码将为您提供所有以Kommunesvar
Excel 文件开头的文件。
Option Explicit
Sub Sample()
Dim subfolder As String
Dim sDir
subfolder = "C:\Temp"
sDir = Dir$(subfolder & "\Kommunesvar*.xls*", vbNormal)
Do Until LenB(sDir) = 0
Debug.Print subfolder & sDir
sDir = Dir$
Loop
End Sub
如果您想将所有文件名存储在一个变量中,那么您也可以使用它。
Sub Sample()
Dim subfolder As String, FileNames As String
Dim sDir
subfolder = "C:\Temp"
sDir = Dir$(subfolder & "\Kommunesvar*.xls*", vbNormal)
Do Until LenB(sDir) = 0
If FileNames <> "" Then
FileNames = FileNames & "; " & subfolder & sDir
Else
FileNames = subfolder & sDir
End If
sDir = Dir$
Loop
Debug.Print FileNames
End Sub