在操作文件时删除一个文件时再平常不过的事情,选中它右键删除,或者直接按DELETE键删除即可,在VBA中操作却是要利用代码来完成这些操作,用代码该如何进行呢?今日我们来讲解这个问题。在讲解之前还是先看看知识点吧。
一:Dir函数。Dir函数返回一个String,用以表示一个文件名、目录名或文件夹名称。
语法如下:Dir[(pathname[, attributes])]

参数:
a) pathname是可选的,用来指定文件名的字符串表达式,可能包含目录或文件夹、以及驱动器。如果没有找到pathname,则会返回零长度字符串 (\"大众\"大众)。
b) attributes是可选的,常数或数值表达式,其总和用来指定文件属性,如下面所示。如果省略,则会返回不包含属性的匹配文件。
vbNormal 0 (缺省) 指定没有属性的文件。
vbReadOnly1指定无属性的只读文件。
vbHidden 2指定无属性的隐蔽文件。
VbSystem 4指定无属性的系统文件,在Macintosh中不可用。
vbVolume8指定卷标文件;如果指定了其它属性,则忽略。vbVolume 在Macintosh中不可用。
vbDirectory16指定无属性文件及其路径和文件夹。
vbAlias64指定的文件名是别名,只在Macintosh上可用。
特殊把稳: 在第一次调用Dir函数时,必须指定pathname,否则会产生缺点。
二:Kill语句,从磁盘中删除文件。
语法如下:Kill pathname
参数pathname是必需的,用来指定一个文件名的字符串表达式,可以包含目录或文件夹、以及驱动器。
特殊把稳点1:在Microsoft Windows中,Kill方法支持多字符 () 和单字符(?)的统配符来指定多重文件,如须要删除当前目录下所有. Xls文件可以利用下面的代码:Kill \"大众.xls\"大众
特殊把稳点2: 利用Kill方法不能删除已打开的文件,否则会产生缺点。
有了上面的两个知识点,我们再看利用Kill方法删除指定的文件的方法,如下面的代码。
Sub MyKillFile()
Dim myFile As String
myFile = ThisWorkbook.Path & \"大众\ABC\abc.docx\公众
If Dir(myFile) <> \"大众\公众 Then
Kill myFile
Else
MsgBox \"大众NOT \"大众 & ThisWorkbook.Path & \公众 \ABC\abc.docx 文件!
\"大众
End If
MsgBox \"大众ok!\公众
End Sub
代码解析:
MyKillFile过程利用Kill方法示例文件所在文件夹中的\"大众abc.docx\公众文件。
第3行代码指定所要删除文件的路径和文件名称。
第4行代码利用Dir函数返回指定文件名,如果存在该文件则利用Kill语句删除。
代码窗口:
如果不存在文件,则返回:
如果存在此文件,则删除,末了运行完成,返回:
今日内容回向:
1 DIR 函数的意义是什么?
2 如何删除一个指定文件呢?