Alle CSV-Dateien aus einem Ordner importieren und löschen
Schritt-für-Schritt-Anleitung
Um alle CSV-Dateien aus einem Ordner zu importieren und diese anschließend zu löschen, kannst du den folgenden VBA-Code verwenden. Diese Anleitung funktioniert in Excel 2010 und neueren Versionen.
-
Öffne Excel und drücke ALT + F11
, um den Visual Basic for Applications (VBA) Editor zu öffnen.
-
Füge ein neues Modul hinzu: Klicke auf "Einfügen" -> "Modul".
-
Kopiere den folgenden Code in das Modul:
Sub ImportAndDeleteCSV()
Dim strFile As String
Dim strDaten, arrTmp
Const cstrFolder As String = "C:\Test\" ' Anpassen auf deinen Ordner
Application.ScreenUpdating = False
strFile = Dir(cstrFolder & "*.csv")
Do While strFile <> ""
Open cstrFolder & strFile For Input As #1
strDaten = Split(Input(LOF(1), 1), vbCrLf)
Close #1
arrTmp = Split(strDaten(0), ";")
ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(, UBound(arrTmp) + 1) = _
WorksheetFunction.Transpose(WorksheetFunction.Transpose(arrTmp))
' Datei löschen
Kill cstrFolder & strFile
strFile = Dir
Loop
End Sub
-
Passe den Pfad C:\Test\
an, um den Ordner anzugeben, der die CSV-Dateien enthält.
-
Schließe den VBA-Editor und kehre zu Excel zurück.
-
Führe das Makro aus: Drücke ALT + F8
, wähle ImportAndDeleteCSV
aus und klicke auf "Ausführen".
Häufige Fehler und Lösungen
-
Fehler: "Datei nicht gefunden"
- Lösung: Überprüfe den angegebenen Pfad. Stelle sicher, dass er korrekt ist und die CSV-Dateien tatsächlich im Ordner vorhanden sind.
-
Fehler: "Ungültiger Dateiformat"
- Lösung: Stelle sicher, dass die Dateien im CSV-Format vorliegen und richtig formatiert sind. Überprüfe auch, ob die Daten korrekt mit einem Semikolon getrennt sind.
-
Fehler: "Ausführung von Makros wurde deaktiviert"
- Lösung: Aktiviere die Makros in den Excel-Optionen unter "Trust Center".
Alternative Methoden
Wenn VBA nicht die bevorzugte Methode ist, kannst du auch Power Query verwenden, um CSV-Dateien zu importieren. Hier sind die Schritte:
- Gehe zu Daten -> Daten abrufen -> Aus Datei -> Aus Ordner.
- Wähle den Ordner mit deinen CSV-Dateien aus.
- Klicke auf "Transformieren", um die Daten nach deinen Wünschen anzupassen.
- Lade die Daten in dein Arbeitsblatt.
Praktische Beispiele
Angenommen, du hast einen Ordner mit den Dateien Daten1.csv
, Daten2.csv
und Daten3.csv
. Jede Datei hat eine Zeile mit den Werten A;B;C
. Nach Ausführung des Makros werden die Daten in deinem aktuellen Arbeitsblatt wie folgt aussehen:
A B C
Danach sind die CSV-Dateien im Ordner gelöscht.
Tipps für Profis
- Automatisierung: Du kannst den Import und das Löschen der Dateien automatisieren, indem du das Makro regelmäßig über die Windows-Aufgabenplanung ausführst.
- Error Handling: Füge Error-Handling in deinen VBA-Code ein, um unerwartete Probleme besser zu verwalten.
- Datenvalidierung: Überprüfe die importierten Daten, bevor du die Dateien löschst, um sicherzustellen, dass alles korrekt importiert wurde.
FAQ: Häufige Fragen
1. Wie kann ich das Makro anpassen, um nur bestimmte CSV-Dateien zu importieren?
Du kannst die Bedingung für strFile
anpassen, um nur bestimmte Dateien zu importieren, z.B. durch Hinzufügen einer speziellen Datei-Erweiterung oder eines Namensmusters.
2. Was passiert, wenn eine CSV-Datei leer ist?
Das Makro wird die leere Zeile ignorieren. Du kannst jedoch zusätzlichen Code hinzufügen, um leere Dateien zu überprüfen und zu handhaben.