2017-01-29 24 views
0

这可能是一个不寻常的问题 - 我当然无法找到任何内容。 基本上我正在检查是否存在使用Dir()的位置。如果用户在特定的工作网络上,那么它很好,但是如果他们不是,那么验证失败(因为它应该)并且用户没有访问权限。即使使用错误捕获,Dir()也会导致表单发生错误。即使发生错误,Dir(fpath)也会导致无法访问网络位置的错误

有没有人有这个错误,并知道如何解决它?

+0

最新错误? – User632716

+0

对不起,错误是52.文件路径类似于\\ companyname.net \ profiles $ \ username \ filename.txt –

+1

尝试使用fso:Dim objFSO as Object Dim folderExists as Boolean Dim folderPath as string Set objFSO = CreateObject(“Scripting .FileSystemObject“)folderExists = objFSO.FolderExists(folderPath) – Absinthe

回答

1

我只是再次尝试,并由于某种原因,现在它的作品。要么我以前是白痴,要么差异在于使用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 

不好意思浪费大家的时间。希望这只是一个如何捕捉错误的例子。

相关问题