vba中dir函数⽤法
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 '获取下⼀个⽂件名
Loop
3. Dir扫描符合条件的⽂件名(通配符*)
⽰例代码:
F = Dir("F:\userdata\Desktop\新建⽂件夹\*.xls"),扫描所有后缀为.xls的⽂件。vba排序函数sort用法
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函数只能返回第⼀层的⼦⽂件夹和⽂件名,⼦⽂件夹下的⽂件与⽂件夹不返回。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。