获取文件夹下文件名,使用VBA处理难度并不大,但是获取全部(包括子文件夹)就难倒了很多新手!今天我们就使用Python和VBA一起来看看如何获取全部文件名!
VBA 获取全部文件名(含子文件夹)
子文件夹可能还有子文件夹,所以这是一个“子子孙孙无穷尽也”的问题这种情况,一般我们能想到好的处理方式就是-递归,但是这是很多新手难以理解的问题!VBA代码,我已经封装成了函数,一般直接调用!目前封装了两种,提供一种字典的方法比较好用!直接来看调用已经写好的方式,比较方便!(模拟设计了多层每层都有文件)其实封装好后,大家如何直接调用,就好像写VLOOKUP一样,对应参数写好就好,不管后台逻辑,也是很舒服的,这和我们后面要讲的Python调包基本差不多!封装好的函数截图在文章底部,下面我们来看Python 如何处理!其实Python简单的核心原因就是他有比较成熟的库管理,每个人都是“调包侠”Python处理-动画演示
我们就直接写一下python,我们要调用自带的os库中的walk函数来处理,对应三个参数分别是路径、文件夹和文件名!Python在文件和文件路径处理方便是真的方便!简单4句即可搞定!但是个人看问题都习惯分场景来谈!在文件格式处理方面,个人还是推荐VBA的,python很多库对Excel格式处理不是很完善,也不太好用!关于VBA和Python选择文件,我已经写过文章,感兴趣的点击阅读 :Python OR VBA函数源码PythonD:\第一层修改我自己需要获取的文件夹路径print(os.path.join(root,file))importos forroot ,dirs ,files inos.walk(r'D:\第一层'):forfile infiles:
VBA自定义函数提供名称和最后缀名的模糊匹配等功能!有VBA基础的同学可以尝试编写类似的方式,方便平时自己调用!对于Python,办公一族更多的听闻强大而好奇!其实每一门语言,学着学着你会发现都不简单,比如Python基础入门后的 类、多线程、进程和协程,装饰器、递归等等都是会让很多新手冷静下来!当然如果当成兴趣爱好,倒是值得玩一玩,小编如是!
end
点个“在看”表示朕
已阅