要判断文件是否存在,可以使用传统VBA语句和FSO对象模型两种方式。
1 使用传统VBA语句判断文件是否存在
先编写一个判断文件是否存在的函数:
Function FileExists(fname) As Boolean
FileExists = Dir(fname) <> ""
End Function
Sub 判断文件()
Dim sFileName As String
sFileName = Application.InputBox(prompt:="请输入文件名称:", _
Default:=ThisWorkbook.FullName, Title:="输入文件名称", Type:=2)
If sFileName = "False" Then Exit Sub '用户选择"取消"则退出程序
If sFileName = "False" Then Exit Sub '用户选择"取消"则退出程序
If FileExists(sFileName) Then
MsgBox "文件 " & sFileName & " 存在!"
Else
MsgBox "文件 " & sFileName & " 不存在!"
End If
End Sub
2 使用FSO对象模型判断文件是否存在
Sub FSO判断文件()
Dim fso As New FileSystemObject, sFileName As String
sFileName = Application.InputBox(prompt:="请输入文件名称:", _
Default:=ThisWorkbook.FullName, Title:="输入文件名称", Type:=2)
If sFileName = "False" Then Exit Sub '用户选择"取消"则退出程序
If fso.FileExists(sFileName) Then
MsgBox "文件 " & sFileName & " 存在!"
Else
MsgBox "文件 " & sFileName & " 不存在!"
End If
Set fso = Nothing
End Sub
-End-