Zum Hauptinhalt springen

Wie kann man Dateien basierend auf einer Liste in Excel von einem Ordner in einen anderen kopieren oder verschieben? 

Author: Xiaoyang Last Modified: 2025-05-28

Wenn Sie eine Liste von Dateinamen in einer Spalte eines Arbeitsblatts haben und die Dateien sich in einem Ordner auf Ihrem Computer befinden, möchten Sie diese Dateien möglicherweise von ihrem ursprünglichen Ordner in einen anderen verschieben oder kopieren, wie im folgenden Screenshot gezeigt. Wie können Sie diese Aufgabe so schnell wie möglich in Excel erledigen?

Kopieren oder Verschieben von Dateien von einem Ordner in einen anderen basierend auf einer Liste in Excel mit VBA-Code

copy files from one folder to another based on a list


Kopieren oder Verschieben von Dateien von einem Ordner in einen anderen basierend auf einer Liste in Excel mit VBA-Code

Um Dateien basierend auf einer Liste von Dateinamen von einem Ordner in einen anderen zu verschieben, könnte der folgende VBA-Code Ihnen helfen. Bitte gehen Sie wie folgt vor:

1. Halten Sie die Tasten Alt + F11 in Excel gedrückt, um das Fenster Microsoft Visual Basic for Applications zu öffnen.

2. Klicken Sie auf Einfügen > Modul und fügen Sie den folgenden VBA-Code in das Modulfenster ein.

VBA-Code: Verschieben von Dateien von einem Ordner in einen anderen basierend auf einer Liste in Excel

Sub movefiles()
'Updateby Extendoffice
    Dim xRg As Range, xCell As Range
    Dim xSFileDlg As FileDialog, xDFileDlg As FileDialog
    Dim xSPathStr As Variant, xDPathStr As Variant
    Dim xVal As String
    On Error Resume Next
    Set xRg = Application.InputBox("Please select the file names:", "KuTools For Excel", ActiveWindow.RangeSelection.Address, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xSFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    xSFileDlg.Title = " Please select the original folder:"
    If xSFileDlg.Show <> -1 Then Exit Sub
    xSPathStr = xSFileDlg.SelectedItems.Item(1) & "\"
    Set xDFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    xDFileDlg.Title = " Please select the destination folder:"
    If xDFileDlg.Show <> -1 Then Exit Sub
    xDPathStr = xDFileDlg.SelectedItems.Item(1) & "\"
    For Each xCell In xRg
        xVal = xCell.Value
        If TypeName(xVal) = "String" And xVal <> "" Then
            FileCopy xSPathStr & xVal, xDPathStr & xVal
            Kill xSPathStr & xVal
        End If
    Next
End Sub

3. Drücken Sie dann die Taste F5, um diesen Code auszuführen, und ein Dialogfeld wird angezeigt, das Sie auffordert, die Zellen auszuwählen, die die Dateinamen enthalten, siehe Screenshot:

 select the cells which contain the file names

4. Klicken Sie dann auf OK, und im erscheinenden Fenster wählen Sie den Ordner aus, der die Dateien enthält, die Sie verschieben möchten, siehe Screenshot:

select the folder which contains the files to move from

5. Klicken Sie dann erneut auf OK und wählen Sie im nächsten Fenster den Zielordner aus, in dem Sie die Dateien speichern möchten, siehe Screenshot:

select the destination folder  to locate the files

6. Klicken Sie abschließend auf OK, um das Fenster zu schließen. Nun wurden die Dateien basierend auf den Dateinamen in der Arbeitsblattliste in den von Ihnen angegebenen Ordner verschoben, siehe Screenshot:

the files have been moved into another folder

Hinweis: Wenn Sie die Dateien nur in einen anderen Ordner kopieren, aber die Originaldateien behalten möchten, wenden Sie bitte den folgenden VBA-Code an:

VBA-Code: Kopieren von Dateien von einem Ordner in einen anderen basierend auf einer Liste in Excel

Sub copyfiles()
'Updateby Extendoffice
    Dim xRg As Range, xCell As Range
    Dim xSFileDlg As FileDialog, xDFileDlg As FileDialog
    Dim xSPathStr As Variant, xDPathStr As Variant
    Dim xVal As String
    On Error Resume Next
    Set xRg = Application.InputBox("Please select the file names:", "KuTools For Excel", ActiveWindow.RangeSelection.Address, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xSFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    xSFileDlg.Title = "Please select the original folder:"
    If xSFileDlg.Show <> -1 Then Exit Sub
    xSPathStr = xSFileDlg.SelectedItems.Item(1) & "\"
    Set xDFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    xDFileDlg.Title = "Please select the destination folder:"
    If xDFileDlg.Show <> -1 Then Exit Sub
    xDPathStr = xDFileDlg.SelectedItems.Item(1) & "\"
    For Each xCell In xRg
        xVal = xCell.Value
        If TypeName(xVal) = "String" And xVal <> "" Then
            FileCopy xSPathStr & xVal, xDPathStr & xVal
        End If
    Next
End Sub
a screenshot of kutools for excel ai

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.
Erweitern Sie Ihre Excel-Fähigkeiten mit KI-gestützten Tools. Laden Sie jetzt herunter und erleben Sie eine Effizienz wie nie zuvor!

Beste Büroproduktivitätswerkzeuge

🤖 Kutools AI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Benutzerdefinierte Formeln erstellen  |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Finden, Hervorheben oder Doppelte markieren   |  Leere Zeilen löschen   |  Spalten oder Zellen kombinieren ohne Datenverlust   |   Runden ...
Erweiterte SVERWEIS: Mehrfachkriterien SVERWEIS    Mehrfachwert SVERWEIS  |   Mehrblatt-SVERWEIS   |   Fuzzy Match ....
Erweiterte Dropdown-Liste: Schnell Dropdown-Liste erstellen   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Eine bestimmte Anzahl von Spalten hinzufügen  |  Spalten verschieben  |  Sichtbarkeitsstatus ausgeblendeter Spalten umschalten  |  Bereiche & Spalten vergleichen ...
Hervorgehobene Funktionen: Gitterfokus   |  Entwurfsansicht   |   Erweiterte Formelleiste    Arbeitsmappe & Arbeitsblatt-Manager   |  AutoText-Bibliothek (Auto Text)   |  Datumsauswahl   |  Daten zusammenführen   |  Zellen verschlüsseln/entschlüsseln    E-Mail senden nach Liste   |  Spezialfilter   |   Spezialfilter (Filtern fett/kursiv/durchgestrichen...) ...
Top15 Werkzeugsets12 Textwerkzeuge (Text hinzufügen, Bestimmte Zeichen löschen, ...)   |   50+ Diagramm typen (Gantt-Diagramm, ...)   |   40+ Praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...)   |   19 Einfügewerkzeuge (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Konvertierungswerkzeuge (In Wörter umwandeln, Währungsumrechnung, ...)   |   7 Konsolidieren & Aufteilen Werkzeuge (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...)   |   ... und mehr

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!