分享 | 又是一波可以直接调用VBA代码(源码)

最近我们分享了几篇常用的VBA代码,每篇基本都是保姆级的,告诉你怎么调用,如果你是VBA开发者,可能拿到代码,只要一句调用即可完成常见的一些复杂需求! 当然也适合0基础同学来使用,就好像使用VLOOKUP那样,了解一下参数即可!

今天我们继续分享几个,都是我个人的常用的自定义函数库!前面没有阅读的同学,推荐阅读,先看一下,如何使用代码等问题!

常用01 |  判断文件夹是否存在
比如我们昨天的写的拆分代码,需要保存到本地,但是你无法确保用户本地有对应的文件夹,所以在保存前需要判断一下!
这里我们使用的Fso方法判断,当然还有DOS和DIR等方式,有兴趣自己可以写一下!
源码:直接复制,方便调用
'功能:判断文件夹是否存在'公众号:Excel办公实战'作者:E精精'日期:20210509'---------------------------------------------------Function exFolder(folderPath As String) Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") exFolder = fso.folderExists(folderPath)End Function
调用演示
> E盘肯定存在,所以返回True
> E盘下并没有123文件夹,返回False
本文由“壹伴编辑器”提供技术支持
如果判断不存在,我们就需要来创建,创建我们也可以使用Fso,或者Mkdir,但是这些不能创建多级,如果是多级的文件夹就麻烦了,所有我们得自己封装一个!
常用02 |  一次常见多级文件夹
我们利用常用01写的判断文件夹是否存在判断我们创建的文件夹是否存在,如果存在则不创建,否则创建!
代码中我们还提供了Dir的方法,也是OK的,多种思路~
源码:直接复制调用吧
'功能:批量创建文件夹'公众号:Excel办公实战'作者:E精精'日期:20210509'---------------------------------------------------Function MkDirs(ByVal sPath As String) Dim arr, i As Integer Dim sFullPath As String If exFolder(sPath) = False Then arr = Split(sPath, "\") If IsArray(arr) Then For i = 0 To UBound(arr) sFullPath = "" For j = 0 To i sFullPath = sFullPath & arr(j) & "\" Next Debug.Print sFullPath '另一种判断文件夹是否存在 If Dir(sFullPath, 16) = "" Then MkDir sFullPath End If Next End If End If MkDirs = sPathEnd Function
调用测试:
执行后效果如下:
上面的这些花里胡哨的,如果你懂DOS,应该知道MD是可以创建多级的,所用我们直接调用DOS那就简单的,我们使用Shell 执行cmd即可!!
有了这些知识,我们可以完善一下昨天写的代码!
链接:每个工作表保存成独立的Excel文件
本文由“壹伴编辑器”提供技术支持
货干不干我不知道,都是用心写的,对那些经常写代码的同学而言,应该有一定的帮助吧!!今天就到这里,出差半夜码字不易,有帮助,三连+分享吧!
(0)

相关推荐