|
|
1
144
1.)检查 here 。基本上是这样做的:
我将让您来计算所需的各种错误处理,但这些都是我正在考虑的错误处理事项:
2.)如何删除文件。看看 this. 基本上使用Kill命令,但需要考虑到文件只读的可能性。以下是您的功能:
同样,我将把错误处理留给您,我会再次考虑以下几点:
编辑:将此答案标记为社区wiki,以便任何人都可以在需要时对其进行修改。 |
|
|
2
45
另一种编码布雷茨基答案的方法,我完全同意,可能是
效果相同,但变量声明更少(好吧,根本没有)。 FileSystemObject是一个非常有用的工具,非常值得友好使用。除此之外,对于文本文件编写,它有时可能比传统的替代方案更快,这可能会让一些人感到惊讶。(至少根据我的经验,YMMV)。 |
|
|
3
10
我可能会因此而大发雷霆,但如果你只是想删除它,那么测试它的存在又有什么意义呢?我最讨厌的一件事是一个应用程序抛出一个错误对话框,上面写着“无法删除文件,它不存在!”
如果文件一开始就不存在,那么任务就完成了! |
|
|
4
10
以下内容可用于测试文件是否存在,然后将其删除。
|
|
5
6
在VB中,它通常
|
|
|
6
4
设置对Scripting.Runtime库的引用 然后使用FileSystemObject:
|
|
|
7
3
这里有一个提示:你是在使用文件名,还是计划做一些需要立即删除的事情? 不 您可以让VBA从命令提示符处启动命令DEL“C:\TEMP\stratchpad.txt”/F 异步 使用VBA。外壳: 外壳“DEL”&chr(34)&strPath&chr(34)&“/F”,vbHide 注意文件名周围的双引号(ASCII字符34):我假设您有一个网络路径,或者一个包含空格的长文件名。 如果它是一个大文件,或者是在一个缓慢的网络连接上,即发即弃是一种方法。 当然,你永远看不到这是否有效;但您可以立即恢复VBA,有时这比等待网络要好。 |
|
|
8
2
您可以设置对Scripting.Runtime库的引用,然后使用FileSystemObject。它有一个DeleteFile方法和一个FileExists方法。 请参阅MSDN文章 here 。 |
|
|
9
1
对我有效的第一个解决方案的简短版本:
|