Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Funktion Datei öffnen

VBA Funktion Datei öffnen
11.04.2017 22:59:21
Michael
Hallo,
ich habe ein Problem mit dieser Funktion. Sie Funktioniert ganz gut, solange sich die Datei öffnen lässt. Lässt sich die Datei nicht öffen, hänge ich in der Endlos Schleife.
Gibt es die möglich keine, dies so umzubauen das es ohne die Do-Loop Schleife läuft?
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

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Funktion Datei öffnen
12.04.2017 04:39:22
Oberschlumpf
Hi Michael
Wozu brauchst du eine Do/Loop-Schleife? Das, was du wissen willst, liefert doch allein schon die For/Each-Schleife.
Versuch mal das hier:
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
For Each WB In Workbooks
If WB.Name = Tabellenname Then geladen = True
Next WB
If geladen = False Then MsgBox "Die Datei existiert nicht"
Else
MsgBox ("Die Datei existiert nicht")
End If
End Function

Hilfts?
Ciao
Thorsten
Anzeige
AW: VBA Funktion Datei öffnen
12.04.2017 14:39:37
Michael
Hallo Thorsten,
danke
ich werde es mal testen.
Gruß
Michael
AW: VBA Funktion Datei öffnen
12.04.2017 15:16:48
Michael
Hallo Thorsten,
mit der Schleife sollte sichergestellt werden das auf jedem Fall die Datei geladen wird.
Kann die Datei momentan nicht geladen werden, soll es ein paar Minuten später neu versucht werden.
Eine Fehlermeldung solle nur kommen, wenn es die Datei wirklich nicht mehr gibt.
Danke
Gruß
Michael
AW: VBA Funktion Datei öffnen
12.04.2017 19:33:48
Oberschlumpf
Hi Michael
Eigtl würde dieser Code shcon recichen:
Function Tabelle_oeffnen(Tabellenname As String, Pfad As String)
If Dir(Pfad & Tabellenname)  "" Then
Workbooks.Open Filename:=Pfad & Tabellenname, ReadOnly:=True
Else
MsgBox "Die Datei existiert nicht"
End If
End Function

Wenn dir(...) = "" dann ist die Datei NIE im Pfad vorhanden.
Ciao
Thorsten
Anzeige
AW: VBA Funktion Datei öffnen
12.04.2017 20:54:57
Michael
Hallo Thorsten,
Ich lasse die Datei auf einen Fernseher 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 weiterläuft auch wenn die geladene Datei, aus welchen Gründen auch immer, momentan nicht geöffnet werden kann.
Kann hinter "Else" noch Application.OnTime Now + TimeValue("00:02:00"), "Tabelle_oeffnen"?
oder was anders, so das es zu keinem Abbruch kommen kann.
Function Tabelle_oeffnen(Tabellenname As String, Pfad As String)
If Dir(Pfad & Tabellenname)  "" Then
Workbooks.Open Filename:=Pfad & Tabellenname, ReadOnly:=True
Else
MsgBox "Die Datei existiert nicht" (Hab ich noch aus Testzeiten drin)
End If
End Function

Danke
Gruß
Michael
Anzeige
AW: VBA Funktion Datei öffnen
13.04.2017 08:54:42
Oberschlumpf
Hi Michael,
leider kenne ich auch keine Lösung, die immer wieder mal nach "DateiXY" fragt.
Ciao
Thorsten

373 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige