检查excel 2010 vba中是否存在目录
我让用户输入一些信息检查excel 2010 vba中是否存在目录,excel,vba,Excel,Vba,我让用户输入一些信息MyBarcode和MyScan,这些信息将用于创建目录。如果该目录存在,我希望显示一条消息,指示该目录并返回到用户可以输入数据的步骤。下面是vba,除了目录检查之外,它似乎正常工作,我需要一些帮助。我希望这是一个良好的开端。谢谢:) 使用Dir和GetAttr函数检查目录是否存在: Function DirectoryExists(Directory As String) As Boolean DirectoryExists = False If Not D
MyBarcode和MyScan
,这些信息将用于创建目录。如果该目录存在,我希望显示一条消息,指示该目录并返回到用户可以输入数据的步骤。下面是vba
,除了目录检查之外,它似乎正常工作,我需要一些帮助。我希望这是一个良好的开端。谢谢:)
使用
Dir
和GetAttr
函数检查目录是否存在:
Function DirectoryExists(Directory As String) As Boolean
DirectoryExists = False
If Not Dir(Directory, vbDirectory) = "" Then
If GetAttr(Directory) = vbDirectory Then
DirectoryExists = True
End If
End If
End Function
Sub TestDirectoryExists()
Dim Directory As String
Directory = "c:\src" ' is a valid directory
Debug.Print DirectoryExists(Directory) ' shows True
Directory = "c:\src1" ' is not a valid directory
Debug.Print DirectoryExists(Directory) ' shows False
Directory = "x:\src" ' is not a valid drive
Debug.Print DirectoryExists(Directory) ' shows False
Directory = "c:\test.txt" ' is a file
Debug.Print DirectoryExists(Directory) ' shows False
End Sub
当我们与vbDirectory属性一起使用时,除了查找没有特殊属性的文件外,还查找文件夹。为了确认我们确实在寻找一个文件夹,我们将使用
并检查路径是否确实是文件夹
您可以在按钮单击事件中随意使用此功能。不应该吗
If GetAttr(Directory) AND vbDirectory Then
而不是
If GetAttr(Directory) = vbDirectory Then
根据什么
If GetAttr(Directory) = vbDirectory Then