Hur kopierar eller flyttar jag filer från en mapp till en annan baserat på en lista i Excel?
Om du har en lista med filnamn i en kolumn i ett kalkylblad och filerna finns i en mapp i din dator. Men nu måste du flytta eller kopiera dessa filer, vilka namn listas i kalkylbladet från sin ursprungliga mapp till en annan enligt följande skärmdump. Hur kunde du slutföra den här uppgiften så fort du kan i Excel?
Kopiera eller flytta filer från en mapp till en annan baserat på en lista i Excel med VBA-kod
Kopiera eller flytta filer från en mapp till en annan baserat på en lista i Excel med VBA-kod
För att flytta filerna från en mapp till en annan baserat på en lista med filnamn, kan följande VBA-kod göra dig en tjänst, gör så här:
1. Håll ner Alt + F11 nycklar i Excel, och det öppnar Microsoft Visual Basic för applikationer fönster.
2. Klicka Insert > Modulernaoch klistra in följande VBA-kod i modulfönstret.
VBA-kod: Flytta filer från en mapp till en annan baserat på en lista i 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. Och tryck sedan på F5 nyckel för att köra den här koden, och en snabbruta dyker upp för att påminna dig om att välja cellerna som innehåller filnamnen, se skärmdump:
4. Klicka sedan OK -knappen, och välj den mapp som innehåller filerna som du vill flytta från, i skärmdumpen, se skärmdump:
5. Och klicka sedan på OK, fortsätt med att välja destinationsmappen där du vill hitta filerna i ett annat poppat fönster, se skärmdump:
6. Slutligen klickar du på OK för att stänga fönstret, och nu har filerna flyttats till en annan mapp som du angav baserat på filnamnen i kalkylbladslistan, se skärmdump:
Anmärkningar: Om du bara vill kopiera filerna till en annan mapp men behålla originalfilerna, använd VBA-koden nedan:
VBA-kod: Kopiera filer från en mapp till en annan baserat på en lista i 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
Lås upp Excel Magic med Kutools AI
- Smart utförande: Utför celloperationer, analysera data och skapa diagram – allt drivs av enkla kommandon.
- Anpassade formler: Skapa skräddarsydda formler för att effektivisera dina arbetsflöden.
- VBA-kodning: Skriv och implementera VBA-kod utan ansträngning.
- Formeltolkning: Förstå komplexa formler med lätthet.
- Textöversättning: Bryt språkbarriärerna i dina kalkylblad.
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!