目录:
视频: 增加邏輯判斷並輸出結果(EXCEL函數與VBA 吳老師分享) 2024
此Excel宏允许您传递文件路径以评估文件是否存在。例如,您可能有一个操作PC上某处文件的进程。例如,您可能需要打开一个现有的工作簿来每天向其中添加数据。在这种情况下,您可能需要测试以查看是否需要操作的文件存在。
宏如何工作
首先要注意的是这个宏是一个函数,而不是一个Sub过程。使这个宏成为一个函数可以让你传递任何文件路径。
<! - 1 - >在这个宏中,使用Dir函数,它返回一个字符串,它代表与传递给它的文件名相匹配的文件名。这个函数可以用很多种方式使用,但是在这里用它来检查你传递给它的文件路径是否存在:
Function FileExists(FPath As String)As Boolean'第一步:声明你的变量Dim FName As字符串'步骤2:使用Dir函数获取文件名FName = Dir(FPath)'步骤3:如果文件存在,则返回True;否则False If FName“Then FileExists = True _ Else:FileExists = False End Function
第1步声明一个字符串变量,该变量保存从Dir函数返回的文件名FName是字符串变量的名称
在步骤2中,您尝试设置FName变量,您可以通过将FPath变量传递给Dir函数来执行此操作,此FPath变量通过函数声明进行传递(请参见第一行这个结构可以防止你对一个文件路径进行硬编码,而是把它作为一个变量来传递。如果FName变量不能被设置,那么你传递的路径就不存在了,所以FName变量是空的,第3步只是将结果转换为True或False表达式
<! - 3 - >
再次,这个函数可以用来评估你传递给它的任何文件路径。下面的宏演示如何使用这个函数:
Sub Macro1()如果FileExists(“C:TempMyNewBook。xlsx” )= True然后MsgBox“文件存在”否则MsgBox“文件不存在”End If End Sub
如何使用宏
要实现此宏,可以将这两个代码复制并粘贴到标准模块:
按Alt + F11激活Visual Basic编辑器。
-
在项目窗口中右键单击项目/工作簿名称。
-
选择插入→模块。
-
在新创建的模块中键入或粘贴代码。