Excel VBA FileCopy

Der er mange måder at kopiere eller flytte en fil fra en mappe til en anden. Vi kan gøre det manuelt ved at kopiere og klippe filikonet og indsætte det i destinationsmappen. Men når det kommer til at automatisere denne proces med kopiering af filen, kan vi også gøre det i VBA. For at kopiere filen har vi en funktion tilgængelig i VBA kaldet den samme “File Copy”.

Syntaks for FileCopy i Excel VBA

Det er meget let at anvende File Copy i VBA. Syntaks for File Copy er som vist nedenfor.

File Copy har kun to komponenter, der skal føjes. Som er:

  • Kilde - Her vil vi placere kildeplaceringen, hvorfra vi har brug for at kopiere filen.
  • Destination - Og dette vil være destinationsmappen, hvor vi vil indsætte den kopierede fil.

Den komplette syntaks vil være i strengdatatype. Fordi vi bruger stien til filen, der vil være som tekst.

Sådan kopieres en fil i Excel VBA?

Lad os nu prøve med nogle eksempler på VBA File Copy i Excel.

Du kan downloade denne VBA Kopier en fil Excel-skabelon her - VBA Kopier en fil Excel-skabelon

Eksempel 1 - FileCopy I VBA

I det første eksempel vil vi se, hvordan man kopierer en fil fra en kildeplacering og indsætter den på en destinationsplacering på en meget enkel måde.

Til dette har vi brug for en fil af enhver art eller udvidelse. Her overvejer vi en Excel-fil med filtypenavn xlsx . Som vi kan se, har vi placeret den excel-fil på et sted, der er let tilgængeligt, kaldet Test .

Nu kopierer vi denne fil ved hjælp af FileCopy til nedenstående destinationsmappe.

Trin 1: Gå hertil til VBA og åbn et modul fra dropdown-menuen Indsæt menu som vist nedenfor.

Trin 2: Skriv nu underkategorien VBA FileCopy i det åbne modul eller i et hvilket som helst andet navn efter dit valg.

Kode:

 Sub VBA_Copy1 () End Sub 

Trin 3: Åbn nu FileCopy- funktionen direkte som vist nedenfor.

Kode:

 Sub VBA_Copy1 () FileCopy (End Sub 

Trin 4: Skriv nu kildepladsadressen i citater efterfulgt af filnavn og filtypenavn som vist nedenfor.

Kode:

 Sub VBA_Copy1 () FileCopy "D: \ Test1 \ Hello.xlsx", slut sub 

Trin 5: For destinationens placering skal du igen placere stien i inverterede kommaer efterfulgt af fil og udvidelse.

Kode:

 Sub VBA_Copy1 () FileCopy "D: \ Test1 \ Hello.xlsx", "D: \ VPB File \ April Files \ Hello.xlsx" End Sub 

Trin 6: Kompilér nu koden og kør den ved at klikke på knappen Afspil, der er placeret under menulinjen. Vi ser, at excel-filen med navnet Test nu kopieres fra kildeplacering til destinationsplacering som vist nedenfor. Da der ikke var noget i filen, så størrelsen på filen kommer til 0 KB .

Eksempel 2 - FileCopy I VBA

I et andet eksempel vil vi se, hvordan vi kopierer filen fra kildeplacering til destination ved at definere variablen. Denne proces er lidt lang, men mere pålidelig, da vi vil rette parametrene og variablen.

Trin 1: Åbn først et nyt modul og skriv underkategorien af ​​VBA File Copy som vist nedenfor.

Kode:

 Sub VBA_Copy2 () End Sub 

Trin 2: Definér først en variabel, hvor vi vil placere kildeplaceringen for filen samme excel-fil, som vi har brugt i eksempel-1 som streng.

Kode:

 Sub VBA_Copy2 () Dim FirstLocation Som String End Sub 

Trin 3: På lignende måde har vi brug for en anden variabel til destinationen Destination.

Kode:

 Sub VBA_Copy2 () Dim FirstLocation Som streng Dim SecondLocation Som streng End Sub 

Trin 4: Nu placeres placeringen i den første definerede variabel, der er “ FirstLocation ” sammen med filnavn og dens udvidelse.

Kode:

 Sub VBA_Copy2 () Dim FirstLocation Som streng Dim SecondLocation Som streng FirstLocation = "D: \ Test1 \ Hello.xlsx" End Sub 

Trin 5: På samme måde skal du gøre den samme ting for Destination placering ved hjælp af variablen " SecondLocation", som vi har defineret ovenfor.

Kode:

 Sub VBA_Copy2 () Dim FirstLocation Som streng Dim SecondLocation Som streng FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB-fil \ April Files \ Hello.xlsx" End Sub 

Trin 6: Nu er det tid til at bruge FileCopy- funktionen.

Kode:

 Sub VBA_Copy2 () Dim FirstLocation Som streng Dim SecondLocation Som streng FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB-fil \ April Files \ Hello.xlsx" FileCopy End Sub 

Pr. Syntaks for FileCopy skal vi først placere kildeplacering, hvor vi har gemt filen. Men som vi allerede har defineret mapperne om kilde og destination placeret ovenfor for begge variabler.

Trin 7: Så her kan vi direkte vælge disse variabler. Vælg først kildeplaceringsvariabel, som er FirstLocation .

Kode:

 Sub VBA_Copy2 () Dim FirstLocation Som streng Dim SecondLocation Som streng FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB-fil \ April Files \ Hello.xlsx" FileCopy FirstLocation End Sub 

Trin 8: Igen på en lignende måde skal du vælge destinationens placeringsvariabel, som er SecondLocation som vist nedenfor.

Kode:

 Sub VBA_Copy2 () Dim FirstLocation Som streng Dim SecondLocation Som streng FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB-fil \ April Files \ Hello.xlsx" FileCopy FirstLocation, SecondLocation End Sub 

Trin 9: Når det er gjort, kompilerer vi koden ved at trykke på F8-funktionstasten. Og hvis der ikke findes nogen fejl, skal du køre koden. Vi ser, filen fra kildeplacering kopieres og indsættes i destinationsmappen som vist nedenfor.

Vi kan også prøve forskellige placeringsstier. For test lad os overveje en anden kilde placering, hvor vi vil have en ordfil.

Som vi kan se, har filen ingen data, så størrelsen vises igen som 0 KB.

Og destinationsmappen vil være Output Location-mappen, som er under mappen Input Location. Hvis vi ser inde i filen, er der ingen tilgængelige data.

Nu erstatter vi kilden og destinationen i henholdsvis variablerne FirstLocation og Second Location efterfulgt af filnavnet og dets udvidelse.

Kode:

 Sub VBA_Copy2 () Dim FirstLocation Som streng Dim SecondLocation Som streng FirstLocation = "D: \ VPB File \ April Files \ New Excel \ Test Case.docx" SecondLocation = "D: \ VPB File \ April Files \ Endelig placering \ Test Case. docx "FileCopy FirstLocation, SecondLocation End Sub 

Kør nu koden.

Vi vil se, at testordfilen nu er kopieret fra mappen Input Location til mappen Output location med den samme størrelse, som er 0 KB.

Fordele ved FileCopy I VBA

  • Det kan bruges til at kopiere mere end 1 fil i ét skud.
  • Det tager en lignende tid for 10 filer, som det tager at kopiere en fil.
  • Vi kan bruge enhver filtypenavn, som vi vil kopiere.

Ting at huske

  • Anbring altid filnavnet og dets udvidelse i slutningen af ​​lokaliseringsnavnet.
  • Citér linkene til destination og kilde placering i inverterede kommaer.
  • Når det er gjort, skal du gemme koden i makro, så Excel kan bruge og bevare koden til fremtidig formål.
  • Giv altid tilladelse til at kode, så den kan kopiere filen fra kildeplaceringen og indsætte den på en destination.

Anbefalede artikler

Dette er en guide til FileCopy i VBA. Her diskuterer vi, hvordan man kopierer en Excel-fil ved hjælp af VBA-kode sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. Arbejder med VBA Active Cell
  2. Sletning af en række i VBA
  3. Sådan bruges Excel VBA-transponering?
  4. Sådan rettes 1004-fejl ved brug af VBA

Kategori: