Wie kann man Dateien basierend auf einer Liste in Excel von einem Ordner in einen anderen kopieren oder verschieben?
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
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:
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:
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:
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:
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

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.
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!