Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access IsFileOpen()从未将文件视为打开?_Ms Access_Vba - Fatal编程技术网

Ms access IsFileOpen()从未将文件视为打开?

Ms access IsFileOpen()从未将文件视为打开?,ms-access,vba,Ms Access,Vba,在VBA(来自MS Access)中,我试图通过调用以下函数并发送完整路径和文件名来确定XLS文件是否打开: Function IsFileOpen(FileName As String) Dim ff As Long, ErrNo As Long On Error Resume Next ff = FreeFile() Open FileName For Input Lock Read As #ff Close ff ErrNo = Err

在VBA(来自MS Access)中,我试图通过调用以下函数并发送完整路径和文件名来确定XLS文件是否打开:

Function IsFileOpen(FileName As String)

    Dim ff As Long, ErrNo As Long

    On Error Resume Next
    ff = FreeFile()
    Open FileName For Input Lock Read As #ff
    Close ff
    ErrNo = Err
    On Error GoTo 0

    Select Case ErrNo
        Case 0:    IsFileOpen = False
        Case 70:   IsFileOpen = True
        Case 53:   IsFileOpen = False ' File not found
        Case Else: Error ErrNo
    End Select

End Function
此例程仅返回(0)-文件已关闭-无论文件的状态如何。我已确认路径和文件名正确,在Access中构造如下:

strPath = Left(CurrentDb.NAME, InStrRev(CurrentDb.NAME, "\"))
myFile = strPath & myInvID & "ChangeTemplate.xlsx"
你有没有想过我会错过什么


谢谢

啊!正在使用AccessMode:=xlShared保存XLS

该文件始终通过此例程的锁定测试


>

注意:例程没有看到错误53-找不到文件。我在案件陈述中添加了这个条件。