Funkce VBA FileCopy | Zkopírujte soubor z jednoho adresáře do druhého

Funkce Excel VBA FileCopy

File Copy je vestavěná funkce VBA používaná ke kopírování souboru z jednoho umístění do jiného uvedeného umístění. Chcete-li použít tuto funkci, musíme zmínit aktuální cestu k souboru a cestu k cílovému souboru.

Dobře, podívejme se na syntaxi funkce FileCopy.

  • Zdroj: Toto není nic jiného, ​​než odkud musíme soubor zkopírovat. Musíme zmínit plně kvalifikovanou cestu ke složce.
  • Cíl: Toto je cílová složka, kam musíme vložit zkopírovaný soubor.

Příklady

Níže jsou uvedeny příklady, jak kopírovat soubory pomocí kódu VBA.

Tuto šablonu VBA pro kopírování souborů Excel si můžete stáhnout zde - VBA pro kopírování šablon aplikace Excel

Příklad č. 1

Začněme jednoduchým příkladem. Ve složce mám soubor s názvem „Prodej duben 2019“. Níže je obrázek stejného, ​​tj. „ Zdroj “.

Z výše uvedeného umístění chci tento soubor zkopírovat a vložit do jiné složky. Níže je obrázek stejného, ​​tj. „ Zdroj cíle“.

Dobře, napíšeme k tomu kód.

Otevřete funkci FileCopy uvnitř procedury Sub.

Kód:

 Sub FileCopy_Example1 ()

FileCopy

End Sub

Nyní u prvního argumentu musíme zmínit cestu k souboru, kde je náš aktuální.

Kód:

 Sub FileCopy_Example1 ()

FileCopy „D: \ Moje soubory \ VBA \ Dubnové soubory

End Sub

Po uvedení cesty ke složce musíme zmínit také soubor s příponou souboru. Takže název souboru uveďte zadáním zpětného lomítka (\).

Kód:

 Sub FileCopy_Example1 () FileCopy "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx", End Sub 

Nyní v druhém argumentu uveďte, kam musíme vložit zkopírovaný soubor.

Kód:

 Sub FileCopy_Example1 () FileCopy "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx", "D: \ My Files \ VBA \ Destination Folder \ Sales April 2019.xlsx" End Sub 

Jedna věc, kterou musíme udělat, je-li na konci uvedena cesta ke složce, musíme v argumentu destinace uvést také název souboru.

Nyní spusťte kód pomocí klávesy F5 nebo ručně, zkopíruje soubor z umístění pod do cílového umístění.

„D: \ Moje soubory \ VBA \ Dubnové soubory \ Prodej duben 2019.xlsx“

„D: \ Moje soubory \ VBA \ Cílová složka \ Prodej duben 2019.xlsx“

Příklad č. 2 - Použijte proměnné k uložení zdrojové cesty a cílové cesty.

V předchozím příkladu jsme zdrojovou cestu a cílovou cestu zadali přímo do vzorce. To ale není nejlepší postup, jak pokračovat, pojďme je tedy uložit do proměnných.

Například se podívejte na níže uvedený kód.

Kód:

 Sub FileCopy_Example2 () Dim SourcePath jako řetězec Dim DestinationPath jako řetězec SourcePath = "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx" DestinationPath = "D: \ My Files \ VBA \ Destination Folder \ Sales April 2019. xlsx "FileCopy SourcePath, DestinationPath End Sub 

Dovolte mi, abych vám kód podrobně vysvětlil.

Nejprve jsem deklaroval dvě proměnné.

 Dim DimPath jako řetězec Dim DimPath jako řetězec 

Pak jsem pro první proměnnou přidělil cestu ke složce, odkud musí zkopírovat soubor a název souboru spolu s jeho příponou.

SourcePath = "D: \ Moje soubory \ VBA \ Dubnové soubory \ Prodej duben 2019.xlsx"

Podobně jsem pro druhou proměnnou přidělil cestu cílové složky s názvem souboru a příponou aplikace Excel.

DestinationPath = "D: \ Moje soubory \ VBA \ Cílová složka \ Prodej duben 2019.xlsx"

Pak jsem pro vzorec FileCopy dodal tyto proměnné namísto zdlouhavých řetězců cesty ke složce.

FileCopy SourcePath, DestinationPath

Takto můžeme použít proměnné k uložení cest a jejich efektivnímu použití.

Příklad č. 3 - Chyba funkce kopírování souborů

Funkce kopírování souborů někdy narazí na chybu „Oprávnění odepřeno“.

Důvod, proč se nám tato chyba zobrazuje, protože když je otevřen kopírovací soubor a pokud se pokusíte kopírovat výše uvedenou chybu, vždy soubor zavřete a spusťte kód.


$config[zx-auto] not found$config[zx-overlay] not found