Das Archiv des Excel-Forums

Mit Schleife prüfen, ob Datei existiert

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Mit Schleife prüfen, ob Datei existiert
von: Martin

Geschrieben am: 19.09.2003 12:58:14

Hallo,

ich hoffe jemand kann mir helfen.

Ich habe zwei Codes gefunden und möchte beide so vereinen, dass in einer Schleife geprüft wird, ob eine Datei existiert. Sobald sie existiert (sie wird in einer Prozedur von einer externen Anwendung generiert), soll die Schleife unterbrochen und eine entpsrechende MsgBox-Meldung erscheinen.

Habt Ihr eine Idee?

Hier der Code, der wartet bis eine Datei geschlossen ist und öffnet sie anschließend (also Praktisch die Schleife):

Sub TestFileOpen()
Dim iOpen As Integer
Dim sFile As String
sFile = InputBox("Path and Filename:", , "c:\test\test.xls")
If sFile = "" Then Exit Sub
Do While TestOpen(sFile) = 1
Loop
Workbooks.Open sFile
End Sub



Private Function TestOpen(sPath As String) As Integer
If Dir(sPath) = "" Then
TestOpen = 2
Else
On Error GoTo ERRORHANDLER
Open sPath For Random Access Read Lock Read Write As #1
Close #1
End If
ERRORHANDLER:
If Err = 70 Then TestOpen = 1
End Function


-----------------------------------------------------------------------------

Hier der Code, der prüft, ob die Datei vorhanden ist:

Dim Datei As String
Datei = "C:\sap-daten\auswertung.db"
If Dir(Datei) <> "" Then
MsgBox " Datei existiert"
End If


Danke im Voraus.

Viele Grüße und ein schönes Wochenende

Martin Kaiser
Bild


Betrifft: AW: Mit Schleife prüfen, ob Datei existiert
von: Hajo_Zi
Geschrieben am: 19.09.2003 13:00:16

Hallo Martin

warum Schleife???


Sub Datei_vorhanden()
'   von Berti Koern
Dim Fso, Dateiname
Set Fso = CreateObject("Scripting.FileSystemObject")
Dateiname = "D:\Eigene Dateien\Hajo\Adresse.xls"
'   Egänzung öffnung Hajo
If Fso.FileExists(Dateiname) Then
Workbooks.Open Dateiname
End If
End Sub



Gruß Hajo


Bild


Betrifft: AW: Mit Schleife prüfen, ob Datei existiert
von: Martin
Geschrieben am: 19.09.2003 13:09:10

Hallo Hajo,

danke für Deinen Code.

Ich benötige aber eine Schleife. Ich starte in EXCEL ein Modul, das verschiedene (Vor-)Arbeiten leistet. Parallel dazu generiert eine externe Software eine Datei. Irgendwann sind die Vorarbeiten des VBA-Modules abgeschlossen und ich muss auf die Ergebnisdatei der externen Software warten.

Da ich nicht weiß, wie lange die externe Software zur Generierung der Datei benötigt, möchte ich mit Hilfe in einer Schleife laufen prüfen, ob die Datei vorhanden ist, oder nicht.

Sobald sie vorhanden ist, erscheint eine Meldung und es werden die weiteren Prozeduren sowie die Abschlussarbeiten durchgeführt.

Grüße

Martin


Bild


Betrifft: AW: Mit Schleife prüfen, ob Datei existiert
von: Martin
Geschrieben am: 19.09.2003 13:17:02

Hallo,

ich glaube ich habe es geschafft...EXCEL prüft alle 5 Sekunden, ob die Datei vorhanden ist, oder nicht. Wenn ja, dann kommt die Meldung.

Sub TestFileOpen()
Dim iOpen As Integer
Dim sFile As String
sFile = "c:\temp\ic_zip\fertig.txt"
Do While TestOpen(sFile) = 1
NeueStunde = Hour(Now())
NeueMinute = Minute(Now())
NeueSekunde = Second(Now()) + 5
WarteZeit = TimeSerial(NeueStunde, NeueMinute, NeueSekunde)
Application.Wait WarteZeit
Loop
MsgBox "vorhanden!"
End Sub


Private Function TestOpen(sPath As String) As Integer
If Dir(sPath) = "" Then
TestOpen = 1
Else
TestOpen = 2
End If
End Function


Oder ist das stark Verbesserungswürdig?

Grüße

Martin


 Bild

Excel-Beispiele zum Thema " Mit Schleife prüfen, ob Datei existiert"

In einer Schleife auf Elemente einer UserForm zugreifen download CheckBoxes in UserForms in eine Schleife einbinden download
Gruppe von UserForm-ListBoxes über eine Schleife ansprechen download UserForm-Optionsfelder über eine Schleife zurücksetzen download
Prüfung, ob eine Symbolleiste existiert download Feststellen, ob eine Datei in einem Verzeichnis existiert download
Prüfung, ob Datei existiert und bei nein Meldung download Prüfen, ob eine TextBox mit vorgegebenem Namen existiert download
Prüfung, ob ein Laufwerk auf dem Rechner existiert download Prüfen, ob ein Name im Outlook-Adressbuch existiert download