找来找去发现rmdir不支持通配符,那怎么删掉含某个关键词的文件夹呢?如我想删掉某目录下含 副本 的文件夹。用*副本*是不行的。
用Scripting.FileSystemObject"方式 :如下删出C:\Documents and Settings\Administrator\桌面\新建文件夹\下面含用 “哈”
字的JPG文件
Sub aa()
Set fso = CreateObject("Scripting.FileSystemObject") '建一个文件管理系统的对象
fso.DeleteFile "C:\Documents and Settings\Administrator\桌面\新建文件夹\*哈*.jpg"
Set fso = Nothing
End Sub追问
1、还没有学过Scripting.FileSystemObject,有没有别的容易点的。
2、删除文件的话,用kill就可以使用通配符吧。
3、我是想删除文件夹。
4、换成deletefolder可以了。但是有没有其它的方法,不通过文件管理系统对象。
vba里没有可以直接删掉含通配符的文件夹吗。
删出文件夹改为:这里是删出含有“哈”文件夹!
对头KILI是可删出文件,但不能删出文件夹;我了斛的就这个了;这个其实很简单呀;只是声明了个Set fso = CreateObject("Scripting.FileSystemObject"),这个下面有一些复制,删出,移动文件与文件夹的属性而以,不难学;
Set fso = CreateObject("Scripting.FileSystemObject") '建一个文件管理系统的对象
fso.DeleteFolder "C:\Documents and Settings\Administrator\桌面\新建文件夹\*哈*"
Set fso = Nothing
End Sub
我测试过了,没有问题,你可以直接试用;
1、删除可以了,但如何判断所有的文件夹名子中是否含有“哈”字呢?因为如果没有的话,vba会提示“路径未找到”。所以要先判断是否有符合条件的文件夹,如果有,就删除,没有,就提示“没有符合条件的文件夹”。
2、另外,如果有的话,删除后,怎么能提示删掉了多个个呢?要统计出删除的文件夹的数量。
最好在删除前,检查有没有符合条件的文件夹,如没有,提示没有。如有,提示有多少个,删除完后,也提示成功删除了多个个。
问题一:可以用以下代码,比如:
If Dir("C:\Documents and Settings\Administrator\桌面\T7\T7*", vbDirectory) = "" Then
MsgBox "不存在"
Else
MsgBox "存在"
End If
End Sub
问题2:需要用到遍历指定文件夹
我很久以前用过,一下子想不起来了。我在想想;