EXECL中使用VBA生成目录树和文件结构

 时间:2024-10-13 12:58:10

1、新建并打开一个Excel文件,右击下方“sheet1”选择“查看代码”。

EXECL中使用VBA生成目录树和文件结构

2、在VBA窗口中输入以下代码:Sub ListFilesTest() With Application.FileDialog(ms泠贾高框oFileDialogFolderPicker) If .Show Then myPath$ = .SelectedItems(1) Else Exit Sub End With If Right(myPath, 1) <> "" Then myPath = myPath & "" [a:a] = "" '清空A列 Call ListAllFso(myPath) '调用FSO遍历子文件夹的递归过程 End SubFunction ListAllFso(myPath$) '用FSO方法遍历并列出所有文件和文件夹名的【递归过程】 Set fld = CreateObject("Scripting.FileSystemObject").GetFolder(myPath) '用FSO方法得到当前路径的文件夹对象实例 注意这里的【当前路径myPath是个递归变量】 For Each f In fld.Files '遍历当前文件夹内所有【文件.Files】 [a65536].End(3).Offset(1) = f.Name '在A列逐个列出文件名 Next For Each fd In fld.SubFolders '遍历当前文件夹内所有【子文件夹.SubFolders】 [a65536].End(3).Offset(1) = "" & fd.Path & "" '在A列逐个列出子文件夹名 [a65536].End(3).Interior.ColorIndex = 6 Call ListAllFso(fd.Path) '注意此时的路径变量已经改变为【子文件夹的路径fd.Path】 '注意重点在这里: 继续向下调用递归过程【遍历子文件夹内所有文件文件夹对象】 NextEnd Function

EXECL中使用VBA生成目录树和文件结构

3、点击上方工具栏三角形的运行按钮,在弹出的宏窗口中再点“运行”。

EXECL中使用VBA生成目录树和文件结构
EXECL中使用VBA生成目录树和文件结构

4、然后选择需要生成目录结构的根文件夹,比如我这里选择的是“D:\SOFT”,按“确定”运行VBA。

EXECL中使用VBA生成目录树和文件结构

5、接下来关闭VBA窗口,就可以看到在sheet1里已经生成好了D:\soft下的目录结构,其中标黄的为子文件夹,其它的则是文件夹下的所有文件。

EXECL中使用VBA生成目录树和文件结构
  • excel中使用vba提取所有工作薄名称的方法
  • 怎么用VBA生成目录树源代码
  • VBA代码-Excel 选中单元格区域并复制
  • VBA中,怎么表示一个循环?
  • VBA怎么判定数据重复录入
  • 热门搜索
    防疫手抄报 植树节手抄报图片 科学手抄报 禁毒手抄报简单又漂亮 垃圾分类手抄报 端午节手抄报简单漂亮 垃圾分类手抄报内容 水浒传手抄报 三年级数学手抄报 文明手抄报