在对宏进行编程时,可能需要确定磁盘上是否存在特定文件。例如,宏的目的可能是打开文本文件并从中读取。在这样做之前,您将需要检查文件是否存在,以避免出错。

以下VBA函数可用于检查文件是否存在。您需要做的就是将完整的文件名作为字符串传递给它,然后宏返回True(如果文件存在)或False(如果文件不存在)。

Function FileThere(FileName As String) As Boolean      FileThere = (Dir(FileName) > "")

End Function

此函数通过使用Dir函数起作用,该函数检查目录中的文件。如果文件存在,则Dir返回文件的完整路径。通过将Dir返回的内容与空字符串进行比较,可以得出函数的True / False条件。如果返回了某些内容,则该文件存在,因为Dir不返回空字符串。

您可以使用类似于以下功能:

If FileThere("c:\myfile.txt") Then      '      ' Do stuff here      ' Else      MsgBox "File Not There!"

End If

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(9050)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处为Excel的较早菜单界面找到此技巧的版本: