ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[原创] 堆栈的一个应用:快速搜索文件夹

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-11-6 08:36 | 显示全部楼层 |阅读模式
本帖已被收录到知识树中,索引项:文件操作和FSO
在回答某网友批量创建文件夹的问题时,偶尔用了下堆栈,没想到速度很快,忽然想到用在‘遍历文件夹’上,速度 会如何,
结果一试,搜索了一下我的文档,近8000个文件,仅用零点几秒,某目录下近七万个文件,仅用2.几秒。
且代码极简单易懂,有兴趣的朋友可以下载测试一下。
简单说一下代码:
一、用dir搜索某目录,如果判断是子目录 ,则推入 堆栈
二、搜索完后,检查堆栈是否为空,不为空,说明堆栈中有目录,则从堆栈中取出目录 ,进行循环。
附件 中所含的vba模拟堆栈的代码,虽然也不是太难明白,但懒得动脑的朋友直接拿来用即可。

批量查找文件.rar (124.77 KB, 下载次数: 527)

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2013-11-6 09:26 | 显示全部楼层
下载学习了

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-11-6 09:40 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 hyefeifei 于 2013-11-6 10:05 编辑
thtfzhaobo 发表于 2013-11-6 09:26
下载学习了

你可以去我以前的这个贴子看一下,七楼有四本书的下载地址,个人认为是学习,备查,vba的极好的书,
本贴附件用类模块模拟堆栈的代码,即来自基中最后一本书,你可以下载备用。
http://club.excelhome.net/thread-1064135-1-1.html

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2013-11-6 09:52 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-11-6 10:01 | 显示全部楼层
香川群子 发表于 2013-11-6 09:52
还没看附件……楼主所谓堆栈,就是=递归的意思吧。

呵,没想到香川老师问到此问题,堆栈,队列,二元树之类的概念,应该是常识概念吧。

点评

呵呵,我说了我还没看附件。因为一开始以为是算法改进,打开附件才知道是用了stack方法。  发表于 2013-11-6 16:39

TA的精华主题

TA的得分主题

发表于 2013-11-6 10:30 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
堆栈是一种数据结构,先进后出。

TA的精华主题

TA的得分主题

发表于 2013-11-6 13:57 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-11-6 19:20 | 显示全部楼层
香川群子 发表于 2013-11-6 13:57
哦,原来是用了stack 方法。

stack也是一种算法啊,不过改进它,就不是我力所能为了。
期望有人能把数据结构的更多算法引入到vba的实际 应用中。


TA的精华主题

TA的得分主题

发表于 2013-11-6 22:02 | 显示全部楼层
hyefeifei 发表于 2013-11-6 19:20
stack也是一种算法啊,不过改进它,就不是我力所能为了。
期望有人能把数据结构的更多算法引入到vba的实 ...

可以参考一下我的一些帖子,比如http://club.excelhome.net/thread-958920-1-1.html

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-11-6 22:24 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
lee1892 发表于 2013-11-6 22:02
可以参考一下我的一些帖子,比如http://club.excelhome.net/thread-958920-1-1.html

呵,真的大师出现了,您这帖子老早俺就见过,以迅雷不及掩耳盗铃之神速收藏了,以备随时查阅,诚望这种可以提升eh品质的贴子多些。也望更多的人见到此贴学而时习之,提升自己的水平。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-4 01:39 , Processed in 0.052473 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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