Vba Dir(fpath)会导致无法访问的网络位置出错,即使在捕获错误时也是如此
这可能是一个不寻常的问题——我当然找不到任何关于它的东西。 基本上,我使用Vba Dir(fpath)会导致无法访问的网络位置出错,即使在捕获错误时也是如此,vba,excel,Vba,Excel,这可能是一个不寻常的问题——我当然找不到任何关于它的东西。 基本上,我使用Dir()检查位置是否存在。如果用户在特定的工作网络上,则可以,但是如果用户不在,则身份验证将失败(应该如此),并且用户没有访问权限Dir()导致工作表出错,即使在使用错误补漏白时也是如此 有人犯过这个错误并且知道如何避免吗?我刚刚再试了一次,出于某种原因,它现在可以工作了。要么我以前是个白痴,要么区别在于使用E.2016。更有可能是前者。下面是工作代码的片段 Dim bErrorState As Boolean
Dir()
检查位置是否存在。如果用户在特定的工作网络上,则可以,但是如果用户不在,则身份验证将失败(应该如此),并且用户没有访问权限Dir()
导致工作表出错,即使在使用错误补漏白时也是如此
有人犯过这个错误并且知道如何避免吗?我刚刚再试了一次,出于某种原因,它现在可以工作了。要么我以前是个白痴,要么区别在于使用E.2016。更有可能是前者。下面是工作代码的片段
Dim bErrorState As Boolean
fPath = fRoot & Environ("USERNAME") & "\OMC_Template_PersonalSettings.txt"
Err.Clear
On Error GoTo SetErrorState
bErrorState = Dir(fPath) = ""
SetErrorState:
If Err <> 0 Then bErrorState = True
On Error GoTo 0
If bErrorState Then
fPath = "C:\Users\" & Environ("USERNAME") & "\OMC_Template_PersonalSettings.txt"
If Dir(fPath) = "" Then Exit Sub
End If
Dim bErrorState为布尔值
fPath=fRoot&Environ(“用户名”)和“\OMC\u Template\u PersonalSettings.txt”
呃,明白了
关于错误转到SetErrorState
bErrorState=Dir(fPath)=“”
SetErrorState:
如果错误为0,则bErrorState=True
错误转到0
如果是这样的话
fPath=“C:\Users\”环境(“用户名”)和“\OMC\u Template\u PersonalSettings.txt”
如果Dir(fPath)=“”,则退出Sub
如果结束
对不起,浪费了人们的时间。希望这只是一个如何捕捉错误的示例。对不起,错误是52。Filepath类似于\\companyname.net\profiles$\username\filename.txtry,使用fso:Dim objFSO作为对象Dim folderExists作为布尔Dim folderPath作为字符串集objFSO=CreateObject(“Scripting.FileSystemObject”)folderExists=objFSO.folderExists(folderPath)