Dies ist mein erster Eintrag im Forum, ich hoffe, alles richtig zu tun.
Ich habe 9 Tabellen, welche ich nacheinander öffne und dann die Daten über eine Routine anpasse. Es kommt ab und zu vor, dass eine dieser Dateien bereits im Netzwerk geöffnet ist, was dann die Routine unterbricht.
Ich möchte eine Routine, welche vor dem Start prüft, ob alle Dateien geschlossen sind.
Die nachfolgende Routine funktioniert, wenn ich sie ohne Loop laufen lasse. Was mache ich falsch?
Besten Dank im voraus
Philipp
Sub IstDateiGeöffnet()
Dim Pfad As String
Dim PL_Nr As Double
Dim PL_Lz As Double
Dim PL_Tab As String
Dim nFile As Double
Dim ErrHandle As Double
Pfad = "K:\Auslastungsplanung\"
PL_Nr = 1
ErrHandle = 0
On Error GoTo errhandler
GoTo Loping
errhandler:
MsgBox "Datei " & PL_Tab & " ist durch einen anderen Anwender gesperrt."
ErrHandle = ErrHandle + 1
Loping:
Do Until PL_Nr = 9
PL_Tab = "PL-" & PL_Nr & ".xlsb"
nFile = FreeFile
Open LW & PL_Tab For Binary Access Read Lock Read As #nFile
Close #nFile
PL_Nr = PL_Nr + 1
Loop
If ErrHandle > 0 Then Exit Sub
End If
'wenn keine Fehler, dann kommt die Routine
End Sub