ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 香川群子

[分享] 跟我学 【喜迎2015立春】遍历文件夹(含子文件夹)方法 ABC

    [复制链接]

TA的精华主题

TA的得分主题

发表于 2015-8-26 16:24 | 显示全部楼层
本帖已被收录到知识树中,索引项:文件操作和FSO
香川群子 发表于 2015-2-4 09:51
下面很快进入正题:

三、遍历目标文件夹内所有文件、以及所有子文件夹中的所有文件。

群子老师您好!
对于“三、遍历目标文件夹内所有文件、以及所有子文件夹中的所有文件”,我有一个问题请教、另有一个不同的看法。
1、问题:如何修改代码,使得结果不会出现那些讨厌的、开头带有“~$”的文件名?(“~$……”是什么文件?)
2、看法:因为程序中没有出现“递归三要素”(递归关系、递归入口、递归出口),所以本程序中并不存在“递归”算法(证明:按F8逐步运行,不会出现“递推”、“回归”过程,而是直接得出结果)。我认为这个程序是“具有变量文件夹路径特点的分层循环”程序。
请群子老师予以指导、指正为盼。

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-26 16:38 | 显示全部楼层
e表格学习 发表于 2015-8-26 16:24
群子老师您好!
对于“三、遍历目标文件夹内所有文件、以及所有子文件夹中的所有文件”,我有一个问题请 ...

你说的是6楼代码吗?

为啥你F8逐步运行时,没有出现递推、回归过程呢?

……
我猜,你是因为你选择的文件夹中并不含子文件夹,
所以仅需一层循环即可处理完毕,没有必要进入下一层子文件夹进一步递推的过程了。呵呵。

TA的精华主题

TA的得分主题

发表于 2015-8-26 19:54 | 显示全部楼层
香川群子 发表于 2015-8-26 16:38
你说的是6楼代码吗?

为啥你F8逐步运行时,没有出现递推、回归过程呢?

群子老师:我的文件夹下既有文件又有子文件夹,子文件夹下还有……
您全部回答我的问题,好吗?(如果是递归,也请明确写出:递归关系、递归人口、递归出口)
谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-26 21:23 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
e表格学习 发表于 2015-8-26 19:54
群子老师:我的文件夹下既有文件又有子文件夹,子文件夹下还有……
您全部回答我的问题,好吗?(如果是 ...

递归过程的括号里面就是入口、End Function 就是出口……

Call 后面就是递归关系。……哈哈,你这么钻牛角尖是学不好的。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-26 21:25 | 显示全部楼层
e表格学习 发表于 2015-8-26 19:54
群子老师:我的文件夹下既有文件又有子文件夹,子文件夹下还有……
您全部回答我的问题,好吗?(如果是 ...

如果你的文件夹是含有子文件夹的,那么你说F8逐句运行以后没发现递归过程……那我觉得你的脑子一定是有问题的。呵呵。

TA的精华主题

TA的得分主题

发表于 2015-8-26 22:53 | 显示全部楼层
香川群子 发表于 2015-8-26 21:25
如果你的文件夹是含有子文件夹的,那么你说F8逐句运行以后没发现递归过程……那我觉得你的脑子一定是有问 ...

问题:如何修改代码,使得结果不会出现那些讨厌的、开头带有“~$”的文件名?(“~$……”是什么文件?)

TA的精华主题

TA的得分主题

发表于 2015-9-1 08:41 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2015-9-4 15:19 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
香川群子 发表于 2015-2-4 09:51
下面很快进入正题:

三、遍历目标文件夹内所有文件、以及所有子文件夹中的所有文件。

关于6楼“遍历文件夹中的递归运算”的一点个人认识:
1、“人口”即“出口”,从哪里进来,就再从哪里出去;(阶乘递归运算中是两个不同位置的“口”)
2、递归的过程:内存中“一竿子插到底”(递推、压栈),然后一层一层地再返回来(回归、释栈)。(阶乘递归运算中,有明确的递归代数关系式、栈式)
这样理解,则“遍历”与阶乘类的“递归”运算就比较容易“统一理解”了。

TA的精华主题

TA的得分主题

发表于 2015-9-4 15:26 | 显示全部楼层
“阶乘”与“遍历”的递归运算,既有相同处,又有不同处。努力弄清楚它们之间的异、同,本人认为非常有必要:应该会减少对“递归”的认识混乱,特别是对于吾类菜鸟。
欢迎讨论,欢迎指正。

TA的精华主题

TA的得分主题

发表于 2015-11-2 18:55 | 显示全部楼层
老师太佩服了,您太厉害了!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-15 10:44 , Processed in 0.034545 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表