Salt la conținutul principal
 

Cum să copiați sau să mutați fișiere dintr-un dosar în altul pe baza unei liste din Excel? 

Autor: Xiaoyang Ultima modificare: 2024-11-06

Dacă aveți o listă de nume de fișiere într-o coloană dintr-o foaie de lucru, iar fișierele se găsesc într-un folder din calculatorul dvs. Dar, acum, trebuie să mutați sau să copiați aceste fișiere ale căror nume sunt listate în foaia de lucru din folderul original în altul, după cum se arată în următoarea captură de ecran. Cum ați putea termina această sarcină cât de repede puteți în Excel?

Copiați sau mutați fișiere dintr-un dosar în altul pe baza unei liste în Excel cu cod VBA

copiați fișiere dintr-un folder în altul pe baza unei liste


Copiați sau mutați fișiere dintr-un dosar în altul pe baza unei liste în Excel cu cod VBA

Pentru a muta fișierele dintr-un dosar în altul pe baza unei liste de nume de fișiere, următorul cod VBA vă poate face o favoare, vă rugăm să procedați astfel:

1. Țineți apăsat butonul Alt + F11 tastele în Excel și deschide fișierul Microsoft Visual Basic pentru aplicații fereastră.

2. Clic Insera > Moduleși lipiți următorul cod VBA în fereastra modulului.

Cod VBA: Mutați fișierele dintr-un dosar în altul pe baza unei liste din 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. Și apoi apăsați F5 pentru a rula acest cod și va apărea o casetă de solicitare pentru a vă reaminti să selectați celulele care conțin numele fișierelor, a se vedea captura de ecran:

selectați celulele care conțin numele fișierelor

4. Apoi apasa OK și, în fereastra pop-out, selectați folderul care conține fișierele din care doriți să vă mutați, vedeți captura de ecran:

selectați folderul care conține fișierele din care să mutați

5. Apoi faceți clic pe OK, continuați să selectați folderul de destinație unde doriți să localizați fișierele într-o altă fereastră ieșită, vedeți captura de ecran:

selectați folderul de destinație pentru a localiza fișierele

6. În cele din urmă, faceți clic pe OK pentru a închide fereastra și acum, fișierele au fost mutate într-un alt folder pe care l-ați specificat pe baza numelor de fișiere din lista foilor de lucru, consultați captura de ecran:

fișierele au fost mutate într-un alt folder

notițe: Dacă doriți doar să copiați fișierele într-un alt folder, dar păstrați fișierele originale, vă rugăm să aplicați codul VBA de mai jos:

Cod VBA: copiați fișierele dintr-un folder în altul pe baza unei liste din 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
o captură de ecran cu kutools pentru excel ai

Deblocați Excel Magic cu Kutools AI

  • Execuție inteligentă: Efectuați operații cu celule, analizați date și creați diagrame, toate conduse de comenzi simple.
  • Formule personalizate: generați formule personalizate pentru a vă simplifica fluxurile de lucru.
  • Codare VBA: Scrieți și implementați codul VBA fără efort.
  • Interpretarea formulei: Înțelegeți cu ușurință formulele complexe.
  • Traducere text: spargeți barierele lingvistice din foile de calcul.
Îmbunătățiți-vă capabilitățile Excel cu instrumente bazate pe inteligență artificială. Descarcă acum și experimentați eficiența ca niciodată!

Cele mai bune instrumente de productivitate de birou

🤖 Kutools AI Aide: Revoluționați analiza datelor pe baza: Execuție inteligentă   |  Generați codul  |  Creați formule personalizate  |  Analizați datele și generați diagrame  |  Invocați funcțiile Kutools...
Caracteristici populare: Găsiți, evidențiați sau identificați duplicatele   |  Ștergeți rândurile goale   |  Combinați coloane sau celule fără a pierde date   |   Rundă fără Formula ...
Super căutare: VLookup cu mai multe criterii    VLookup cu valori multiple  |   VLookup pe mai multe foi   |   Căutare fuzzy ....
Listă derulantă avansată: Creați rapid o listă derulantă   |  Listă drop-down dependentă   |  Listă derulantă cu selectare multiplă ....
Manager de coloane: Adăugați un număr specific de coloane  |  Mutați coloanele  |  Comutați starea vizibilității coloanelor ascunse  |  Comparați intervale și coloane ...
Caracteristici prezentate: Focus pe grilă   |  Vedere de proiectare   |   Big Formula Bar    Manager registru de lucru și foi   |  Biblioteca de resurse (Text automat)   |  Data Picker   |  Combinați foi de lucru   |  Criptare/Decriptare celule    Trimiteți e-mailuri după listă   |  Super Filtru   |   Filtru special (filtrează bold/italic/barat...) ...
Top 15 seturi de instrumente12 Text Instrumente (Adăuga text, Eliminați caractere,...)   |   50+ Diagramă Tipuri de (Gantt Chart,...)   |   40+ Practic Formule (Calculați vârsta pe baza zilei de naștere,...)   |   19 inserare Instrumente (Introduceți codul QR, Inserați imaginea din cale,...)   |   12 Convertire Instrumente (Numere la cuvinte, conversie valutara,...)   |   7 Merge & Split Instrumente (Rânduri combinate avansate, Celule divizate,...)   |   ... și altele

Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru Excel oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp.  Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...


Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!