相关知识点:
“.”和”..”意思
“.”代表所在文件夹本身
”..”代表所在文件夹的上一级文件夹
例1 接收一个参数(比如”d:\vbademo\”),然后将该参数代表的文件夹中,所有子文件夹显示在工作表中(不必显示子文件夹的子文件夹)第一层的文件夹名字
Option Explicit
Dim i as long
Sub demo()
i=1
List”d:\vbademo\”
End Sub
Sub list(folder)
Dim fname
’ Dim i as long
‘ i=1
fname=dir(fold,vbdirectory)=vbdirectory Then
Do while fname<>””
If fname<>”.” And fname<>”..” Then ‘判断取消带点文件夹目录
If (getattr(folder & fanme) and vbdirectory)=vbdirectory Then
Cells(i,1)=folder & fname
i=i+1
End if
End If
Fnane=dir
Loop
End Sub
例2 递归查找子文件夹下的文件夹
Option Explicit
Dim i as long
Sub demo()
i=1
List”d:\vbademo\”
End Sub
Sub list(folder)
Dim fname
fname=dir(fold,vbdirectory)=vbdirectory Then
Do while fname<>””
If fname<>”.” And fname<>”..” Then ‘判断取消带点文件夹目录
If (getattr(folder & fanme) and vbdirectory)=vbdirectory Then
Cells(i,1)=folder & fname
i=i+1
list folder & fname & “\”
End if
End If
Fnane=dir ‘找到空字符串返回错误!停止,请看下一回
Loop
End Sub