Ik heb bestand waarop een wachtwoord zit. Tijdens het open kunnen ze alleen lezen selecteren of het wachtwoord intoetsen.
Nu probeer onderstaan macro. Alles gaat goed behalve als het bestand geopend is als alleen lezen. Dan krijg ik de melding "can be safely used"
Hoe kan ik dit oplossen?
mvg
Kasper
Nu probeer onderstaan macro. Alles gaat goed behalve als het bestand geopend is als alleen lezen. Dan krijg ik de melding "can be safely used"
Hoe kan ik dit oplossen?
Code:
Sub Example()
Dim filespec As String
filespec = "C:\Map1.xlsx"
Select Case IsFileOpened(filespec)
Case 0 'File is not opened
MsgBox "The file " & filespec & " can be safely used"
Case 1 'File is opened
MsgBox "The file " & filespec & " is already in use!"
Case 2 'File not found
MsgBox "The file " & filespec & " does not exist!"
End Select
End Sub
Function IsFileOpened(StrFilePath As String) As Integer
Dim FileNum As Integer
'First check filepath exists
If Len(Dir(StrFilePath)) > 0 Then
FileNum = FreeFile()
On Error Resume Next
Open StrFilePath For Input Lock Read As #FileNum ' Open file and lock it.
If Err.Number <> 0 Then
IsFileOpened = 1 'File open
Else
IsFileOpened = 0 'File Closed
End If
Close FileNum
Else
IsFileOpened = 2 'File not found
End If
End Function
mvg
Kasper