Option Explicit
Private Sub TestIsFileOpen()
Dim strFile As String
strFile = "This file does not exist"
Debug.Print Chr$(34) & strFile & Chr$(34); IIf(IsFileOpen(strFile), " is open", " is not open")
strFile = "C:\boot.ini"
Debug.Print Chr$(34) & strFile & Chr$(34); IIf(IsFileOpen(strFile), " is open", " is not open")
strFile = "J:\Documents and Settings\Howard Kaikow\ntuser.dat.LOG"
Debug.Print Chr$(34) & strFile & Chr$(34); IIf(IsFileOpen(strFile), " is open", " is not open")
End Sub
Private Function IsFileOpen(strFullyQualifiedFileName As String) As Boolean
Dim intFreeFile As Integer
intFreeFile = FreeFile
On Error Resume Next
Open strFullyQualifiedFileName For Binary Access Read Lock Read As #intFreeFile
Close #intFreeFile
If Err.Number = 0 Then
IsFileOpen = False
Else
IsFileOpen = True
Err.Clear
End If
End Function