Hallo,
ich lasse die Datei auf einen Fernseher (großer Monitor) laufen, wo immer wieder die Werte aktualisiert werden. Da sollen natürlich keine Fehlermeldungen oder Abbrüche zusehen sein.
Deshalb muss sichergestellt werden dass die Macro weiter läuft auch wenn die geladene Datei, aus welchen Gründen auch immer, momentan nicht geöffnet werden kann.
Nur ist die DO-Loop Schleife nicht wirklich hilfreich, da wenn die Datei nicht geöffnet werden kann, sich die Macro aufhängt.
Ich brauch eine Möglichkeit eine Datei zu öffnen (Schreibgeschützt), dann soll geprüft werden ob die Datei offen ist.
Sollte die Datei nicht offen sein, soll eine Zeit X gewartet werden und dann wird wieder versucht die Datei zu öffnen.
Hier mein bisheriger Ansatz
Function Tabelle_oeffnen(Tabellenname As String, Pfad As String)
If Dir(Pfad & Tabellenname) <> "" Then
On Error Resume Next
Workbooks.Open Filename:=Pfad & Tabellenname, ReadOnly:=True
geladen = False
Do
For Each WB In Workbooks
If WB.Name = Tabellenname Then geladen = True
Next WB
Loop Until geladen = True
Else
MsgBox ("Die Datei existiert nicht")
End If
End Function
Danke
Gruß
Michael
ich lasse die Datei auf einen Fernseher (großer Monitor) laufen, wo immer wieder die Werte aktualisiert werden. Da sollen natürlich keine Fehlermeldungen oder Abbrüche zusehen sein.
Deshalb muss sichergestellt werden dass die Macro weiter läuft auch wenn die geladene Datei, aus welchen Gründen auch immer, momentan nicht geöffnet werden kann.
Nur ist die DO-Loop Schleife nicht wirklich hilfreich, da wenn die Datei nicht geöffnet werden kann, sich die Macro aufhängt.
Ich brauch eine Möglichkeit eine Datei zu öffnen (Schreibgeschützt), dann soll geprüft werden ob die Datei offen ist.
Sollte die Datei nicht offen sein, soll eine Zeit X gewartet werden und dann wird wieder versucht die Datei zu öffnen.
Hier mein bisheriger Ansatz
Function Tabelle_oeffnen(Tabellenname As String, Pfad As String)
If Dir(Pfad & Tabellenname) <> "" Then
On Error Resume Next
Workbooks.Open Filename:=Pfad & Tabellenname, ReadOnly:=True
geladen = False
Do
For Each WB In Workbooks
If WB.Name = Tabellenname Then geladen = True
Next WB
Loop Until geladen = True
Else
MsgBox ("Die Datei existiert nicht")
End If
End Function
Danke
Gruß
Michael