求救,为什么我用VBA的dir遍历文件夹老是只能获取“.”的呢??
我的部分代码如下:dimffasstringff=dir("d:\test\",vbDirectory)可是却没有一次是可以获取test目录下的文件夹名称!!只能为ff=...
我的部分代码如下:
dim ff as string
ff = dir("d:\test\",vbDirectory)
可是却没有一次是可以获取test目录下的文件夹名称!!只能为ff=“.”
但是如果我是遍历test文件夹下有非文件夹的东西却可以!!
如:
ff = dir("d:\test\*.xls")
这是为什么啊??!!
一楼你说的还是不行!
你这方法我试过了,如果是路径是盘符根目录,如"d:\” ,"e:\” 之类的就可以,
但如果路径是"d:\testing\” ,"e:\xxx\” 之类的仍然是 "."!!! 展开
dim ff as string
ff = dir("d:\test\",vbDirectory)
可是却没有一次是可以获取test目录下的文件夹名称!!只能为ff=“.”
但是如果我是遍历test文件夹下有非文件夹的东西却可以!!
如:
ff = dir("d:\test\*.xls")
这是为什么啊??!!
一楼你说的还是不行!
你这方法我试过了,如果是路径是盘符根目录,如"d:\” ,"e:\” 之类的就可以,
但如果路径是"d:\testing\” ,"e:\xxx\” 之类的仍然是 "."!!! 展开
2个回答
展开全部
根据vba帮助文档,dir函数会返回满足条件的第一个文件名或者文件夹名。再次调用没有任何参数的dir命令会返回满足条件的下一个文件名或者文件夹名。
对于非根目录,第一个文件夹就是“.”,第二个是".."从第三个开始才是windows资源管理器下你所能看到的文件夹。
所以运行
dim ff as string
temp = dir("d:\test\",vbDirectory)
ff = dir
则ff应该为".."
而运行
dim ff as string
temp = dir("d:\test\",vbDirectory)
dir
ff = dir
则ff应该为你所说的第一个文件夹名。
对于非根目录,第一个文件夹就是“.”,第二个是".."从第三个开始才是windows资源管理器下你所能看到的文件夹。
所以运行
dim ff as string
temp = dir("d:\test\",vbDirectory)
ff = dir
则ff应该为".."
而运行
dim ff as string
temp = dir("d:\test\",vbDirectory)
dir
ff = dir
则ff应该为你所说的第一个文件夹名。
2009-03-19
展开全部
Private Sub Command1_Click()
Print Dir("d:\*", vbDirectory)
End Sub
=====
dir("d:\test\",vbDirectory) 这样只是判断test文件夹是否存在
Print Dir("d:\*", vbDirectory)
End Sub
=====
dir("d:\test\",vbDirectory) 这样只是判断test文件夹是否存在
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询