FileCopy programu Excel VBA
Existuje veľa spôsobov, ako skopírovať alebo presunúť súbor z jedného priečinka do druhého. Môžeme to urobiť ručne z Kopírovanie a orezanie ikony súboru a vloženie do cieľového priečinka. Ale pokiaľ ide o automatizáciu tohto procesu kopírovania súboru, môžeme to urobiť aj vo VBA. Na skopírovanie súboru máme vo VBA k dispozícii funkciu s názvom rovnaká ako „kopírovanie súborov“.
Syntax FileCopy v programe Excel VBA
Je veľmi ľahké aplikovať kopírovanie súborov vo VBA. Syntax súboru Kopírovanie súborov je uvedená nižšie.
Kópia súboru má iba dva komponenty. Ktoré sú:
- Zdroj - tu umiestnime zdrojové umiestnenie, odkiaľ musíme súbor skopírovať.
- Cieľ - A to bude cieľový priečinok, do ktorého vložíme skopírovaný súbor.
Úplná syntax bude v údajovom type String. Pretože budeme používať cestu k súboru, ktorá bude ako text.
Ako kopírovať súbor v Excel VBA?
Skúsme teraz s niekoľkými príkladmi kopírovania súborov VBA v Exceli.
Túto VBA kópiu šablóny súboru Excel si môžete stiahnuť tu - VBA skopírujte šablónu súboru ExcelPríklad č. 1 - FileCopy In VBA
V prvom príklade uvidíme, ako skopírovať súbor zo zdrojového umiestnenia a vložiť ho na cieľové miesto veľmi jednoduchým spôsobom.
Na tento účel potrebujeme súbor akéhokoľvek typu alebo prípony. Tu uvažujeme o excelovskom súbore s príponou xlsx . Ako vidíme, umiestnili sme tento vynikajúci súbor do umiestnenia, ktoré je ľahko prístupné s názvom Test .
Teraz skopírujeme tento súbor pomocou FileCopy do nižšie uvedeného cieľového priečinka.
Krok 1: Za týmto účelom prejdite na VBA a otvorte rozbaľovaciu ponuku Modul z ponuky Vložiť, ako je uvedené nižšie.
Krok 2: Teraz do otvoreného modulu napíšte podkategóriu VBA FileCopy alebo akékoľvek iné meno podľa vášho výberu.
kód:
Sub VBA_Copy1 () End Sub
Krok 3: Teraz priamo otvorte funkciu FileCopy, ako je to znázornené nižšie.
kód:
Sub VBA_Copy1 () FileCopy (End Sub
Krok 4: Teraz do úvodzoviek napíšte adresu zdrojového umiestnenia nasledovanú názvom súboru a príponou, ako je uvedené nižšie.
kód:
Sub VBA_Copy1 () FileCopy "D: \ Test1 \ Hello.xlsx", End Sub
Krok 5: Pre cieľové miesto znova vložte cestu do čiariek s obrátenými čiarami, za ktorými nasleduje súbor a prípona.
kód:
Sub VBA_Copy1 () FileCopy "D: \ Test1 \ Hello.xlsx", "D: \ VPB File \ April Files \ Hello.xlsx" End Sub
Krok 6: Teraz zostavte kód a spustite ho kliknutím na tlačidlo Prehrať, ktoré sa nachádza pod panelom s ponukami. Uvidíme, že súbor programu Excel s názvom Test je teraz skopírovaný zo zdrojového umiestnenia do cieľového umiestnenia, ako je to znázornené nižšie. Keďže v súbore nebolo nič, veľkosť súboru bude 0 KB .
Príklad č. 2 - FileCopy In VBA
V ďalšom príklade uvidíme, ako skopírovať súbor zo zdrojového umiestnenia do cieľa definovaním premennej. Tento proces je trochu zdĺhavý, ale spoľahlivejší, pretože stanovíme parametre a premennú.
Krok 1: Teraz najskôr otvorte nový modul a napíšte podkategóriu Kopírovanie súborov VBA, ako je to znázornené nižšie.
kód:
Sub VBA_Copy2 () End Sub
Krok 2: Najskôr definujte premennú, do ktorej umiestnime zdrojové umiestnenie súboru rovnako excelovský súbor, aký sme použili v príklade 1 ako String.
kód:
Sub VBA_Copy2 () Dim FirstLocation ako String End Sub
Krok 3: Podobným spôsobom budeme potrebovať inú premennú pre cieľové miesto.
kód:
Sub VBA_Copy2 () Dim FirstLocation ako String Dim SecondLocation ako String End Sub
Krok 4: Teraz umiestnite umiestnenie do prvej definovanej premennej, ktorá je „ FirstLocation “, spolu s názvom súboru a jeho príponou.
kód:
Sub VBA_Copy2 () Dim FirstLocation ako reťazec Dim SecondLocation ako reťazec FirstLocation = "D: \ Test1 \ Hello.xlsx" End Sub
Krok 5: Rovnakým spôsobom urobte to isté pre cieľové miesto pomocou premennej „ SecondLocation“, ktorú sme definovali vyššie.
kód:
Sub VBA_Copy2 () Dim FirstLocation ako reťazec Dim SecondLocation ako reťazec FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB File \ April Files \ Hello.xlsx" End Sub
Krok 6: Teraz je čas použiť funkciu FileCopy .
kód:
Sub VBA_Copy2 () Dim FirstLocation ako reťazec Dim SecondLocation ako reťazec FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB File \ April Files \ Hello.xlsx" FileCopy End Sub
Najprv musíme podľa syntaxe FileCopy umiestniť zdrojové umiestnenie, kde sme súbor uchovali. Ale ako sme už definovali priečinky zdrojového a cieľového umiestnenia vyššie pre obe premenné.
Krok 7: Takže tu môžeme priamo vybrať tieto premenné. Najprv vyberte zdrojovú premennú umiestnenia, ktorou je FirstLocation .
kód:
Sub VBA_Copy2 () Dim FirstLocation ako reťazec Dim SecondLocation ako reťazec FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB File \ April Files \ Hello.xlsx" FileCopy FirstLocation End Sub
Krok 8: Opäť podobným spôsobom vyberte cieľovú premennú umiestnenia, ktorá je SecondLocation, ako je to znázornené nižšie.
kód:
Sub VBA_Copy2 () Dim FirstLocation ako reťazec Dim SecondLocation ako reťazec FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB File \ April Files \ Hello.xlsx" FileCopy FirstLocation, SecondLocation End Sub
Krok 9: Po dokončení zostavíme kód stlačením funkčného klávesu F8. A ak nenájdete chybu, spustite kód. Uvidíme, súbor zo zdrojového umiestnenia sa skopíruje a vloží do cieľového priečinka, ako je uvedené nižšie.
Môžeme vyskúšať aj inú cestu k polohe. Na skúšku zvážme ďalšie zdrojové umiestnenie, kde budeme mať textový súbor.
Ako vidíme, súbor nemá žiadne údaje, takže veľkosť sa opäť zobrazuje ako 0 kB.
Cieľový priečinok bude priečinok Output Location, ktorý sa nachádza v priečinku Input Location. Ak vidíme vnútri súboru, nie sú k dispozícii žiadne údaje.
Teraz nahradíme zdroj a cieľ v premenných FirstLocation a Second Location, za ktorými nasleduje názov súboru a jeho prípona.
kód:
Sub VBA_Copy2 () Dim FirstLocation ako reťazec Dim SecondLocation ako reťazec FirstLocation = "D: \ VPB File \ April Files \ New Excel \ Test Case.docx" SecondLocation = "D: \ VPB File \ April Files \ Final location \ Test Case. docx "FileCopy FirstLocation, SecondLocation End Sub
Teraz spustite kód.
Uvidíme, že súbor s testovacím slovom sa teraz skopíruje z priečinka Input Location do priečinka Output Location s rovnakou veľkosťou, ktorá je 0 KB.
Výhody FileCopy vo VBA
- Môže sa použiť na kopírovanie viac ako 1 súboru na jeden záber.
- Trvá to isté množstvo času pre 10 súborov ako pre kopírovanie jedného súboru.
- Môžeme použiť akýkoľvek typ súboru prípony, ktorý chceme kopírovať.
Čo je potrebné pamätať
- Názov súboru a jeho príponu vždy vložte na koniec názvu umiestnenia.
- Uveďte odkazy na cieľové a zdrojové umiestnenie do obrátených čiariek.
- Po dokončení uložte kód do makra, aby program Excel mohol používať a uchovávať ho pre budúce účely.
- Vždy udeľujte povolenie na kód, aby mohol súbor skopírovať zo zdrojového umiestnenia a vložiť ho do cieľového umiestnenia.
Odporúčané články
Toto je sprievodca FileCopy vo VBA. Tu diskutujeme o tom, ako kopírovať súbor programu Excel pomocou kódu VBA spolu s praktickými príkladmi a šablónou programu Excel na stiahnutie. Môžete si tiež prečítať naše ďalšie navrhované články -
- Práca s VBA Active Cell
- Odstránenie riadku vo VBA
- Ako používať Excel VBA Transpozícia?
- Ako opraviť chybu 1004 pomocou VBA