VBA编程知识点(10) |
您所在的位置:网站首页 › dir指令用法 › VBA编程知识点(10) |
VBA编程知识点(10)——Dir函数 学习自杨洋老师《全民一起VBA》 1. 在VBA中,dir函数可以返回一个文件夹下一个文件的名字(包含后缀)。示例代码: filename = Dir("F:\userdata\Desktop\新建文件夹\") dir后面的参数应该以反斜杠“\”结尾,这样才能返回该文件夹下的文件名称。否则“新建文件夹”会被当成一个文件名进行处理。 Dir运行一次只能得到一个文件名。为得到下一个文件名,代码应该这样写:filename = Dir。 Dir后面不写任何参数,如果写了与前面相同的参数"F:\userdata\Desktop\新建文件夹\",则会重新扫描该文件夹,又得到第一个文件名,如果更改为其他文件夹,就扫描该文件夹,得到它的第一个文件名 如果文件夹中有n个文件,或者说有n个符合条件的文件,那么当Dir运行第n+1次时,则返回一个空字符串,代表已经查找完所有的文件。Dir运行第n+2次时,程序将报错。 2. 扫描一个文件夹下所有文件的通用模板Dim filename as string filename = Dir("F:\userdata\Desktop\新建文件夹\") '可以更改为任意文件夹 Do while filename "" 相关操作 filename = Dir '获取下一个文件名 Loop3. Dir扫描符合条件的文件名(通配符*)示例代码: F = Dir("F:\userdata\Desktop\新建文件夹\*.xls"),扫描所有后缀为.xls的文件。 4. 判断一个文件是否存在示例代码: F = Dir("F:\userdata\Desktop\新建文件夹\123.xls") 如果文件123.xls存在,则返回字符串123.xls,如果不存在,则返回空字符串。 5. 扫描文件和子文件夹名称一般情况下,Dir函数只返回文件名,而不返回子文件夹名。如果想要两者都返回,则需要加上vbDirectory参数。示例代码如下: F = Dir("F:\userdata\Desktop\新建文件夹\" , vbDirectory) 特别要注意的是,子文件夹包括“.”和“..”两个特殊名字,分别代表本目录F:\userdata\Desktop\新建文件夹\及其父目录F:\userdata\Desktop\。 Dir函数只能返回第一层的子文件夹和文件名,子文件夹下的文件与文件夹不返回。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |