【CBM666 的枚举子文件夹】

'添加 Command1

 Option Explicit
Dim strrec$(), TFolders&
Dim i&, fs, f, s

Private Sub Command1_Click()
   s = GetFolders("e:/music")
   If TFolders <= 0 Then MsgBox "无子文件夹": Exit Sub
   Me.Cls
   For i = 0 To UBound(s)
      Print s(i)
   Next i
   MsgBox "总共有: " & CStr(TFolders) & " 个子文件夹"
End Sub

Public Function GetFolders(Selpath$) As String()
   Set fs = CreateObject("Scripting.FileSystemObject")
   Selpath = IIf(Right(Selpath, 1) = "/", Mid(Selpath, 1, Len(Selpath) - 1), Selpath)
   Set f = fs.GetFolder(Selpath)
   ReDim Preserve strrec$(0)
   strrec(0) = Selpath
   TFolders = 0
   GetSubFolder f, 0
   GetFolders = strrec()
End Function

Private Sub GetSubFolder(f, n)
   Dim sf, f1
   Set sf = f.SubFolders
   If Not sf Is Nothing Then
      For Each f1 In sf
         GetSubFolder f1, n + 4
         TFolders = TFolders + 1
         ReDim Preserve strrec$(TFolders - 1)
         strrec(TFolders - 1) = f1
         DoEvents
      Next
   End If
End Sub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值