Czasem chcielibyśmy wiedzieć, czy plik na którym chcemy wykonać jakąś operację, jest dla nas dostępny. Np gdy jest otwarty przez innego użytkownika próba jego użycia może powodować błąd. Ponadto wcześniej należy sprawdzić czy dany plik w ogóle istnieje. Można to sprawdzić przy pomocy poniższych funkcji:
Public Const WERSJA as String = "Dostępność pliku v.0.1" Sub TestFunkcji() Const NAZWA_PLIKU As String = "C:\EX04\Baza.xls" If BrakPliku(NAZWA_PLIKU) Then Exit Sub If PlikNiedostepny(NAZWA_PLIKU) Then Exit Sub MsgBox "Plik jest dostępny, można coś z nim robić ;)", vbInformation End Sub Function PlikNiedostepny(NazwaPliku As String) As Boolean Dim NrPliku As Long On Error GoTo Obsluga NrPliku = FreeFile() Open NazwaPliku For Binary Access Read Write Lock Read Write As #NrPliku Close #NrPliku Exit Function Obsluga: Select Case Err Case 70 MsgBox "Plik jest obecnie otwarty przez inny proces", vbExclamation Case Else MsgBox "Przy próbie otwarcia pliku zgłaszany jest błąd: " _ & Err & " - " & Err.Description, vbCritical End Select PlikNiedostepny = True End Function Function BrakPliku(PelnaNazwaPliku As String) As Boolean If Dir(PelnaNazwaPliku) = "" Then MsgBox "Brak pliku", vbCritical, WERSJA BrakPliku = True End If End Function |