Excel VBA FileCopy

Mnogo je načina za kopiranje ili premještanje datoteke iz jedne mape u drugu. To možemo učiniti ručno iz Kopiranje i rezanje ikone datoteke i lijepljenje u odredišnu mapu. Ali kad je u pitanju automatizacija ovog postupka kopiranja datoteke, to možemo učiniti i u VBA. Za kopiranje datoteke, dostupna je funkcija u VBA koja je nazvana "File Copy" (kopiranje datoteke).

Sintaksa FileCopy u Excelu VBA

Aplikaciju File Copy (kopiranje datoteka) u VBA vrlo je jednostavno. Sintaksa datoteke Kopiranje prikazana je dolje.

File Copy sadrži samo dvije komponente koje se mogu hraniti. Koji su:

  • Izvor - Ovdje ćemo staviti lokaciju izvora odakle trebamo kopirati datoteku.
  • Odredište - i ovo će biti odredišna mapa u koju ćemo zalijepiti kopiranu datoteku.

Kompletna sintaksa bit će u vrsti podataka String. Jer ćemo koristiti put datoteke koja će biti tekst.

Kako kopirati datoteku u Excel VBA?

Pokušajmo s nekim primjerima kopiranja VBA datoteke u Excelu.

Ovdje možete preuzeti VBA Kopirajte predložak datoteke Excel ovdje - VBA Kopirajte predložak datoteke Excel

Primjer 1 - FileCopy u VBA

U prvom ćemo primjeru vidjeti kako kopirati datoteku s izvornog mjesta i zalijepiti je na odredišno mjesto na vrlo jednostavan način.

Za to nam treba datoteka bilo koje vrste ili proširenja. Ovdje razmatramo Excel datoteku s nastavkom xlsx . Kao što vidimo, datoteku Excela smjestili smo na mjesto koje je lako pristupiti i nazvano Test .

Sada ćemo kopirati ovu datoteku uz pomoć FileCopy-a u donju odredišnu mapu.

Korak 1: Za to idite na VBA i otvorite modul s padajućeg izbornika Umetanje kao što je prikazano u nastavku.

Korak 2: Sada u otvoreni modul napišite podkategoriju VBA FileCopy ili u bilo koje drugo ime po vašem izboru.

Kodirati:

 Sub VBA_Copy1 () Kraj Sub 

Korak 3: Sada izravno otvorite funkciju FileCopy kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_Copy1 () FileCopy (Kraj sub 

Korak 4: Sada u citate upišite adresu lokacije izvora, a zatim ime datoteke i proširenje kao što je prikazano u nastavku.

Kodirati:

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

Korak 5: Za mjesto odredišta ponovo stavite putanju u obrnute zareze, a zatim datoteku i proširenje.

Kodirati:

 Pod VBA_Copy1 () FileCopy "D: \ Test1 \ Hello.xlsx", "D: \ VPB datoteka \ Travan datoteke \ Hello.xlsx" Kraj Sub 

Korak 6: Sada sastavite kôd i pokrenite ga klikom na gumb Play koji se nalazi ispod trake izbornika. Vidjet ćemo, datoteka Excel s imenom Test sada se kopira s izvornog mjesta na odredišno mjesto kao što je prikazano u nastavku. Kako u datoteci nije bilo ničega, tako je i veličina datoteke 0 KB .

Primjer 2 - FileCopy U VBA

U drugom primjeru vidjet ćemo kako kopirati datoteku s izvora izvora u odredište definiranjem varijable. Ovaj je postupak malo dugotrajan, ali pouzdaniji jer ćemo popravljati parametre i varijablu.

Korak 1: Sada prvo otvorite novi modul i napišite podkategoriju VBA File Copy kako je prikazano u nastavku.

Kodirati:

 Sub VBA_Copy2 () Kraj Sub 

Korak 2: Prvo definirajte varijablu u koju ćemo kao izvornu lokaciju datoteke staviti isti excel datoteku koju smo u primjeru-1 koristili kao String.

Kodirati:

 Sub VBA_Copy2 () Dim FirstLocation kao string string Sub 

Korak 3: Na sličan način trebat će nam druga varijabla za odredišnu lokaciju.

Kodirati:

 Sub VBA_Copy2 () Dim FirstLocation kao niz string Dim SecondLocation kao String End Sub 

Korak 4: Sada stavite mjesto u prvu definiranu varijablu koja je " FirstLocation ", zajedno s imenom datoteke i njenim proširenjem.

Kodirati:

 Pod VBA_Copy2 () Dim FirstLocation kao string Dim SecondLocation kao string string FirstLocation = "D: \ Test1 \ Hello.xlsx" Kraj Sub 

Korak 5: Na sličan način napravite istu stvar za odredišnu lokaciju koristeći varijablu " SecondLocation" koju smo gore definirali.

Kodirati:

 Pod VBA_Copy2 () Dim FirstLocation kao string Dim SecondLocation kao String FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB datoteka \ April Files \ Hello.xlsx" End Sub 

Korak 6: Sada je vrijeme za upotrebu FileCopy funkcije.

Kodirati:

 Pod VBA_Copy2 () Dim FirstLocation kao string Dim SecondLocation kao String FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB datoteka \ April Files \ Hello.xlsx" FileCopy Kraj Sub 

Prema sintaksi FileCopy najprije moramo postaviti izvornu lokaciju, gdje smo datoteku i zadržali. No kao što smo već definirali izvorne i odredišne ​​mape lokacije za obje varijable.

Korak 7: Dakle, mi možemo izravno odabrati te varijable. Prvo odaberite varijablu izvorne lokacije koja je FirstLocation .

Kodirati:

 Pod VBA_Copy2 () Dim FirstLocation kao string Dim SecondLocation kao string FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB datoteka \ Travanj datoteke \ Hello.xlsx" FileCopy FirstLocation End Sub 

Korak 8: Ponovo na sličan način odaberite varijablu odredišne ​​lokacije koja je SecondLocation kao što je prikazano u nastavku.

Kodirati:

 Pod VBA_Copy2 () Dim FirstLocation kao string Dim SecondLocation kao String FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB datoteka \ Travanj datoteke \ Hello.xlsx" FileCopy FirstLocation, SecondLocation End Sub 

Korak 9: Nakon završetka, sastavit ćemo kôd pritiskom na F8 funkcionalnu tipku. A ako nije pronađena nijedna pogreška, pokrenite kôd. Vidjet ćemo, datoteka s izvornog mjesta kopirana je i zalijepljena u odredišnu mapu kao što je prikazano u nastavku.

Također možemo isprobati i različitu putanju lokacije. Za test, razmotrimo još jedno izvorno mjesto gdje ćemo imati datoteku s riječima.

Kao što vidimo, datoteka nema nikakve podatke, pa se veličina opet prikazuje kao 0 KB.

A odredišna mapa bit će mapa Output Location koja se nalazi u mapi Location Input. Ako vidimo unutar datoteke, nema podataka.

Sada ćemo zamijeniti izvor i odredište u varijablama FirstLocation odnosno Second Location, a zatim slijedi naziv datoteke i njeno proširenje.

Kodirati:

 Pod VBA_Copy2 () Dim FirstLocation kao string Dim SecondLocation kao niz FirstLocation = "D: Datoteka VPB \ Travanjske datoteke \ New Excel \ Test Case.docx" SecondLocation = "D: \ VPB datoteka \ Travanj datoteke \ Konačna lokacija \ Test case. docx "FileCopy FirstLocation, SecondLocation End Sub 

Sada pokrenite kod.

Vidjet ćemo da je datoteka Word Word kopirana iz mape Location Input u mapu Output location iste veličine koja iznosi 0 KB.

Pros za FileCopy u VBA

  • Može se koristiti za kopiranje više od jedne datoteke u jednom kadru.
  • Za 10 datoteka potrebno je približno toliko vremena koliko je potrebno za kopiranje jedne datoteke.
  • Možemo koristiti bilo koju vrstu datoteke proširenja koju želimo kopirati.

Stvari koje treba zapamtiti

  • Uvijek stavite naziv datoteke i njeno proširenje na kraj naziva lokacije.
  • Navedite veze odredišta i lokacije u pretvorene zareze.
  • Nakon završetka spremite kôd u Makronaredbi kako biste omogućili Excelu da ga koristi i zadrži za buduću svrhu.
  • Uvijek dajte dozvolu za kodiranje kako bi mogla kopirati datoteku s izvornog mjesta i zalijepiti je na odredišno mjesto.

Preporučeni članci

Ovo je vodič za FileCopy u VBA. Ovdje smo razgovarali o tome kako kopirati Excel datoteku pomoću VBA koda zajedno s praktičnim primjerima i download-ovim Excel predloška. Možete i pregledati naše druge predložene članke -

  1. Rad s VBA Active Cell
  2. Brisanje retka u VBA
  3. Kako se koristi Excel VBA Transpose?
  4. Kako popraviti pogrešku 1004 pomoću VBA

Kategorija: