0

我目前有这个代码:

Function GetSubDir(ByVal sPath As String, Optional ByVal sPattern As Variant) As Variant

Dim sDir As String
Dim sDirLocationForText As String

On Error GoTo Err_Clk

If Right$(sPath, 1) <> "\" Then sPath = sPath & "\"

If IsMissing(sPattern) Then
sDir = Dir$(sPath, vbDirectory)
Else
sDir = Dir$(sPath & sPattern, vbDirectory)
End If
Do Until LenB(sDir) = 0

If sDir <> "." And sDir <> ".." Then
sDirLocationForText = sDirLocationForText & ";" & sPath & sDir
End If
sDir = Dir$

Loop

If Left$(sDirLocationForText, 1) = ";" Then sDirLocationForText = 
Right(sDirLocationForText, Len(sDirLocationForText) - 1)
GetSubDir = sDirLocationForText

End Function

目前,当我调用此函数时,它会返回所有文件夹名称,这就是它的用途。但是,是否有一种简单的方法可以对其进行返工以便它也返回文件名?先感谢您。

我的工作簿

4

1 回答 1

0

如果你vbNormal在这些行中使用而不是 vbDirectory 你应该得到文件:

If IsMissing(sPattern) Then
   sDir = Dir$(sPath, vbDirectory)
Else
   sDir = Dir$(sPath & sPattern, vbDirectory)
End If
于 2013-03-05T10:22:41.470 回答