Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Prüfen, ob Datei vorhanden

Prüfen, ob Datei vorhanden
18.06.2013 14:22:50
Herbert
Hallo,
ich möchte gern, dass geprüft wird, ob eine Datei bereits vorhanden ist. Dazu dieser Code:
Sub Pruefen()
ActiveWorkbook.SaveAs Filename:="c:\temp\test.xls"
If Dir("c:\temp\test.xls") = "" Then
MsgBox "Datei fehlt!"
Else
MsgBox "Datei vorhanden !"
End If
End Sub
Es soll allerdings zusätzlich zur Meldung "Datei vorhanden !" die Meldung erscheinen, ob diese überschrieben werden soll (Ja/Nein). Bei "Ja" überschreiben. Bei "Nein" Ende.
Eventuell gibt es Hilfestellung. Wäre toll. Danke.

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Prüfen, ob Datei vorhanden
18.06.2013 14:35:50
MatthiasG
Hallo Herbert,
wenn du den SaveAs-Befahl ganz oben hinstellt, fragt bereits das System, ob die Datei überschrieben werden soll.
Und:
Was soll denn passieren, wenn die Datei fehlt? Nichts außer der MsgBox, so wie in deinem Code bisher?
Entwurf:

Sub Pruefen()
If Dir("c:\temp\test.xls") = "" Then
MsgBox "Datei fehlt!"
Else
If MsgBox("Datei vorhanden!" & vbLf & "Überscheiben?", vbYesNo) = vbYes Then
Application.DisplayAlerts = False 'Warnung vor Überschreiben abschalten
ActiveWorkbook.SaveAs Filename:="c:\temp\test.xls"
Application.DisplayAlerts = True
End If
End If
End Sub

Gruß Matthias

Anzeige
AW: Prüfen, ob Datei vorhanden
18.06.2013 14:37:11
Wer
Hallo
das regelt excel selbst.
ActiveWorkbook.SaveAs Filename:="c:\temp\test.xls"
dadurch wird die Datei bereits gespeichert.
Speicherst du zum wiederholten mal kommt die Meldung "Eine Datei mit dem ... ist bereits vorhanden...
- - -
Der Rest fragt nur nochmal ab, ob die Datei auch da ist.
Gruß UweD

Anzeige
AW: Prüfen, ob Datei vorhanden
18.06.2013 14:37:34
Rudi
Hallo,
Sub Pruefen()
Dim strFile As String
strFile = "c:\temp\test.xls"
If Dir(strFile) = "" Then
'MsgBox "Datei fehlt!"
ActiveWorkbook.SaveAs strFile
Else
If MsgBox("Datei vorhanden!" & vbLf & "Überschreiben?", vbYesNo) = vbYes Then
Kill strFile
ActiveWorkbook.SaveAs strFile
End If
End If
End Sub

Anzeige
AW: Prüfen, ob Datei vorhanden
18.06.2013 14:39:10
Herbert
Vielen Dank!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Prüfen, ob eine Datei in Excel vorhanden ist


Schritt-für-Schritt-Anleitung

Um in Excel zu prüfen, ob eine Datei vorhanden ist, kannst du den folgenden VBA-Code verwenden. Dieser Code prüft, ob die Datei existiert, und fragt, ob sie überschrieben werden soll.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Gehe zu Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Füge den folgenden Code ein:
Sub Pruefen()
    Dim strFile As String
    strFile = "c:\temp\test.xls"

    If Dir(strFile) = "" Then
        MsgBox "Datei fehlt!"
        ActiveWorkbook.SaveAs strFile
    Else
        If MsgBox("Datei vorhanden!" & vbLf & "Überschreiben?", vbYesNo) = vbYes Then
            Application.DisplayAlerts = False ' Warnung vor Überschreiben abschalten
            ActiveWorkbook.SaveAs strFile
            Application.DisplayAlerts = True
        End If
    End If
End Sub
  1. Schließe den VBA-Editor und führe das Makro aus, um die Datei zu prüfen.

Häufige Fehler und Lösungen

  • Fehler: "Datei fehlt!" wird angezeigt, obwohl die Datei vorhanden ist.

    • Lösung: Überprüfe den Pfad und den Dateinamen. Stelle sicher, dass du die Datei an dem angegebenen Ort gespeichert hast.
  • Fehler: Die Meldung zum Überschreiben erscheint nicht.

    • Lösung: Stelle sicher, dass die ActiveWorkbook.SaveAs-Anweisung im richtigen Block ist, damit Excel die Datei speichert.

Alternative Methoden

Wenn du keine VBA verwenden möchtest, kannst du auch Excel-Formeln und Funktionen nutzen, um zu prüfen, ob eine Datei vorhanden ist. Das ist jedoch eingeschränkt und bietet nicht die gleichen Möglichkeiten wie VBA. Eine einfache Möglichkeit wäre, den Pfad der Datei in eine Zelle einzugeben und dann mit einer Formel wie =ISTFEHLER(PFAD.ZU.DATEI(A1)) zu arbeiten, wobei A1 die Zelle ist, die den Pfad enthält.


Praktische Beispiele

Hier sind einige Beispiele, wie der VBA-Code angepasst werden kann:

  • Prüfen, ob eine Datei in einem bestimmten Ordner vorhanden ist:
Sub PruefenOrdner()
    Dim strFile As String
    strFile = "c:\temp\deineDatei.xls"

    If Dir(strFile) = "" Then
        MsgBox "Datei fehlt!"
    Else
        MsgBox "Datei vorhanden!"
    End If
End Sub
  • Prüfen, ob eine Datei existiert und in einem anderen Format speichern:
Sub PruefenUndSpeichern()
    Dim strFile As String
    strFile = "c:\temp\test.xlsx"

    If Dir(strFile) = "" Then
        MsgBox "Datei fehlt!"
        ActiveWorkbook.SaveAs Filename:=strFile, FileFormat:=xlOpenXMLWorkbook
    End If
End Sub

Tipps für Profis

  • Nutze Application.DisplayAlerts = False, um Excel-Warnungen beim Speichern zu unterdrücken.
  • Verwende Fehlerbehandlungsroutinen, um sicherzustellen, dass der Code auch bei unerwarteten Fehlern robust bleibt.
  • Prüfe mit FileExists über die Scripting.FileSystemObject-Klasse, um eine genauere Prüfung durchzuführen.

FAQ: Häufige Fragen

1. Wie kann ich prüfen, ob eine Datei in einem bestimmten Ordner vorhanden ist?
Du kannst den Pfad zur Datei in der strFile-Variable anpassen. Der Code bleibt gleich.

2. Kann ich auch ohne VBA prüfen, ob eine Datei vorhanden ist?
Ja, jedoch sind die Möglichkeiten eingeschränkt. Du kannst eine Formel verwenden, um zu prüfen, ob der Pfad korrekt ist, aber für umfassendere Prüfungen ist VBA die bessere Wahl.

3. Was passiert, wenn die Datei in einem Netzwerkordner gespeichert ist?
Der VBA-Code funktioniert auch mit Netzwerkordnern, solange der Pfad korrekt angegeben ist.

4. Gibt es eine Möglichkeit, die Prüfung in Access VBA durchzuführen?
Ja, die Methoden sind ähnlich, du kannst Dir auch in Access verwenden, um zu prüfen, ob eine Datei vorhanden ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige