Wie kann man mehrere CSV/Text/XML-Dateien in Excel schnell stapelweise importieren?
In Excel haben Sie möglicherweise versucht, eine Arbeitsmappe als CSV-Datei, Textdatei oder XML-Datei zu speichern, aber haben Sie jemals versucht, mehrere CSV/Text/XML-Dateien aus einem Ordner in eine Arbeitsmappe oder ein Arbeitsblatt zu importieren? In diesem Artikel stelle ich einige Methoden vor, um sie schnell stapelweise zu importieren.
Mehrere Textdateien aus einem Ordner mit VBA in die einzelnen Arbeitsblätter einer Arbeitsmappe importieren
Um Textdateien aus einem Ordner in eine Arbeitsmappe zu importieren, können Sie das folgende VBA verwenden, um es schnell zu erledigen.
1. Öffnen Sie eine leere Arbeitsmappe, und drücken Sie die Tasten Alt + F11, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
2. Klicken Sie auf Einfügen > Modul und fügen Sie das VBA in das Modulfenster ein.
VBA: Importieren Sie alle Textdateien aus einem Ordner in eine Arbeitsmappe
Sub LoadPipeDelimitedFiles()
'UpdatebyKutoolsforExcel20151214
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\*.txt")
Do While xFile <> ""
xCount = xCount + 1
Sheets(xCount).Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
& xStrPath & "\" & xFile, Destination:=Range("A1"))
.Name = "a" & xCount
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 437
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
xFile = Dir
End With
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files txt", , "Kutools for Excel"
End Sub
3. Drücken Sie die Taste F5 oder klicken Sie auf die Schaltfläche Ausführen, um das VBA auszuführen, und wählen Sie im erscheinenden Dialogfeld den Ordner aus, aus dem Sie die Textdateien importieren möchten. Siehe Screenshot:
4. Klicken Sie auf OK, und jede Textdatei im ausgewählten Ordner wurde in ein Arbeitsblatt der aktiven Arbeitsmappe importiert. Siehe Screenshot:



Entfesseln Sie die Magie von Excel mit Kutools AI
- Intelligente Ausführung: Führen Sie Zellenoperationen durch, analysieren Sie Daten und erstellen Sie Diagramme – alles angetrieben durch einfache Befehle.
- Benutzerdefinierte Formeln: Erstellen Sie maßgeschneiderte Formeln, um Ihre Arbeitsabläufe zu optimieren.
- VBA-Codierung: Schreiben und implementieren Sie VBA-Code mühelos.
- Formelinterpretation: Verstehen Sie komplexe Formeln mit Leichtigkeit.
- Textübersetzung: Überwinden Sie Sprachbarrieren in Ihren Tabellen.
Mehrere CSV-Dateien aus einem Ordner mit VBA in ein einzelnes Blatt importieren
Um alle CSV-Dateien aus einem Ordner in ein einzelnes Blatt zu importieren, können Sie den folgenden VBA-Code verwenden.
1. Aktivieren Sie ein leeres Arbeitsblatt und drücken Sie die Tasten Alt + F11, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
2. Klicken Sie auf Einfügen > Modul und fügen Sie das folgende VBA in das neue Modulfenster ein.
VBA: CSV-Dateien aus einem Ordner in ein Arbeitsblatt importieren
Sub ImportCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
Dim xSht As Worksheet
Dim xWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Set xSht = ThisWorkbook.ActiveSheet
If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then xSht.UsedRange.Clear
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\" & "*.csv")
Do While xFile <> ""
Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
Columns(1).Insert xlShiftToRight
Columns(1).SpecialCells(xlBlanks).Value = ActiveSheet.Name
ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).End(xlUp).Offset(1)
xWb.Close False
xFile = Dir
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files csv", , "Kutools for Excel"
End Sub
3. Drücken Sie die Taste F5 oder klicken Sie auf die Schaltfläche Ausführen, um das VBA auszuführen, und ein Dialogfeld erscheint, um den Ordner auszuwählen, aus dem Sie alle CSV-Dateien importieren möchten. Siehe Screenshot:
4. Klicken Sie auf OK, und ein Dialogfeld erscheint, um Sie daran zu erinnern, ob Sie die Inhalte des aktiven Arbeitsblatts vor dem Import löschen möchten; hier klicke ich auf Ja. Siehe Screenshot:
Nachdem Sie auf Ja geklickt haben, werden alle CSV-Dateien im ausgewählten Ordner in das aktuelle Blatt importiert, wobei die Daten ab Spalte A nach rechts platziert werden. Siehe Screenshot:


Tipp: Wenn Sie die CSV-Dateien horizontal in einem Arbeitsblatt platzieren möchten, können Sie das folgende VBA verwenden.
Sub ImportCSVsWithReferenceI()
'UpdatebyKutoolsforExcel20151214
Dim xSht As Worksheet
Dim xWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Set xSht = ThisWorkbook.ActiveSheet
If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then
xSht.UsedRange.Clear
xCount = 1
Else
xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
End If
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\" & "*.csv")
Do While xFile <> ""
Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
Rows(1).Insert xlShiftDown
Range("A1") = ActiveSheet.Name
ActiveSheet.UsedRange.Copy xSht.Cells(1, xCount)
xWb.Close False
xFile = Dir
xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files csv", , "Kutools for Excel"
End Sub
Mehrere XML-Dateien aus einem Ordner mit VBA in ein einzelnes Blatt importieren
Wenn Sie alle XML-Dateien aus einem Ordner in ein einzelnes Blatt importieren möchten, können Sie den folgenden VBA-Code verwenden.
1. Wählen Sie ein leeres Blatt aus, in das Sie die importierten Daten einfügen möchten, und drücken Sie die Tasten Alt + F11, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
2. Klicken Sie auf Einfügen > Modul und fügen Sie den VBA-Code in das Modulfenster ein.
VBA: XML-Dateien aus einem Ordner in ein Arbeitsblatt importieren.
Sub From_XML_To_XL()
'UpdatebyKutoolsforExcel20151214
Dim xWb As Workbook
Dim xSWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
Set xSWb = ThisWorkbook
xCount = 1
xFile = Dir(xStrPath & "\*.xml")
Do While xFile <> ""
Set xWb = Workbooks.OpenXML(xStrPath & "\" & xFile)
xWb.Sheets(1).UsedRange.Copy xSWb.Sheets(1).Cells(xCount, 1)
xWb.Close False
xCount = xSWb.Sheets(1).UsedRange.Rows.Count + 2
xFile = Dir()
Loop
Application.ScreenUpdating = True
xSWb.Save
Exit Sub
ErrHandler:
MsgBox "no files xml", , "Kutools for Excel"
End Sub
3. Klicken Sie auf die Schaltfläche Ausführen oder drücken Sie die Taste F5, um das VBA auszuführen, und wählen Sie im erscheinenden Dialogfeld einen Ordner aus. Siehe Screenshot:
4. Klicken Sie auf OK, und alle XML-Dateien im ausgewählten Ordner werden in das aktive Blatt importiert.
Mehrere XML/CSV-Dateien mit Kutools für Excel in ein Blatt oder eine Arbeitsmappe importieren oder kombinieren
Wenn Sie sich mit VBA nicht auskennen, machen Sie sich keine Sorgen, hier stelle ich Ihnen ein praktisches Tool vor – Kutools für Excel. Mit seinem leistungsstarken Kombinieren-Dienstprogramm können Sie schnell mehrere XML-Dateien oder CSV-Dateien in eine Arbeitsmappe oder ein Excel-Blatt zusammenführen.
Nach der Installation von Kutools für Excel gehen Sie bitte wie folgt vor: (Jetzt kostenlos Kutools für Excel herunterladen!)
1. Aktivieren Sie Excel und klicken Sie auf Kutools Plus > Konsolidieren. Siehe Screenshot:
2. Und im Schritt 1 von Konsolidieren Dialogfeld, wählen Sie eine Trennoption aus, die Sie benötigen. Siehe Screenshot:
3. Klicken Sie auf Weiter um zu Schritt 2 von Konsolidieren, klicken Sie auf Hinzufügen um Dateien aus verschiedenen Ordnern oder Dateien aus einem Ordner hinzuzufügen Arbeitsmappe Liste, und Sie können auch die Blätter angeben, die Sie kombinieren möchten, aus der Arbeitsblatt Liste im rechten Abschnitt. Siehe Screenshot:
4. Klicken Sie auf Weiter zum letzten Schritt von Konsolidieren, und Sie können die Kombinationsmöglichkeiten festlegen.
5. Klicken Sie auf Fertig, ein Dialogfeld erscheint, um Sie daran zu erinnern, einen Speicherort für das neue kombinierte Ergebnis auszuwählen. Siehe Screenshot:
6. Klicken Sie auf Speichern. Alle hinzugefügten Blätter wurden in ein neues einzelnes Blatt kombiniert.
Tipp: Mit Konsolidieren können Sie auch mehrere CSV-Dateien aus mehreren Ordnern oder einem Ordner in ein Blatt oder eine Arbeitsmappe kombinieren.
Jedes Blatt mit Kutools für Excel als CSV/Text/PDF in einen Ordner exportieren
Wenn Sie jedes Blatt als CSV/Text/PDF-Datei in einen Ordner exportieren möchten, kann Ihnen das Dienstprogramm „Arbeitsmappe teilen“ von Kutools für Excel helfen.
Nach dem kostenlosen Herunterladen und Installieren von Kutools für Excel gehen Sie bitte wie folgt vor:
1. Aktivieren Sie die Arbeitsmappe, deren Arbeitsblätter Sie exportieren möchten, und klicken Sie auf Kutools Plus > Arbeitsmappe > Arbeitsmappe teilen. Siehe Screenshot:
2. Im Dialogfeld „Arbeitsmappe teilen“ können Sie die Namen der Blätter, die Sie exportieren möchten, überprüfen; standardmäßig sind alle Blätter markiert. Aktivieren Sie „Speicherformat angeben“ und wählen Sie das gewünschte Dateiformat aus der Dropdown-Liste unten. Siehe Screenshot:
3. Klicken Sie auf Teilen und wählen Sie einen Ordner aus, um die geteilten Dateien im Dialogfeld „Ordner durchsuchen“ zu speichern, siehe Screenshot:
4. Klicken Sie auf OK, jetzt werden alle markierten Blätter im ausgewählten Ordner als neues Dateiformat exportiert.
Verwandte Artikel:
- Wie konvertiert man einen Hyperlink in einfachen Text in Excel?
- Wie konvertiert man eine Dezimalzahl in eine Binär/Oktal/Hexadezimalzahl oder umgekehrt in Excel?
- Wie fügt man den Live-Wechselkurs in Excel ein?
Beste Büroproduktivitätswerkzeuge
Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...
Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher
- Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
- Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!