VBA Odstrániť súbor | Ako odstrániť súbory v priečinku pomocou kódu VBA?

Vo VBA môžeme odstrániť akýkoľvek súbor prítomný v počítači pomocou kódov VBA a kód, ktorý sa používa na odstránenie ľubovoľného súboru, sa nazýva príkaz Zabiť. Metóda na odstránenie ľubovoľného súboru je taká, že najskôr poskytneme cestu k súboru, čo znamená, že kde súbor sa nachádza v počítači a potom pomocou príkazu Zabiť súbor odstránime.

Ako odstrániť súbory pomocou kódu VBA?

VBA je na začiatku ťažká vec, ale keď budete tráviť viac času s VBA, začnete ho milovať rovnako ako ja. Súbory môžeme otvárať z iného priečinka v počítači, môžeme s nimi pracovať a teraz môžeme súbory tiež mazať pomocou kódovania VBA. V tomto článku vám ukážeme, ako môžete mazať súbory pomocou kódu VBA v konkrétnom priečinku.

Keď pracujeme s veľkými projektmi, zvyčajne vytvoríme veľa prechodných súborov, ktoré podporia náš proces. Po vykonaní celej práce musíme tieto súbory odstrániť, aby sme v budúcnosti predišli akýmkoľvek nejasnostiam.

A jedným scenárom je, keď zvyčajne dostaneme e-mail, ktorý si uložíme ako prílohu pre našu bežnú prácu, alebo si chceme správu pozrieť len za ten čas a neskôr budeme možno musieť tieto súbory odstrániť.

Ručné mazanie týchto súborov si vyžiada čas alebo zabudneme na ich uloženie a zaberie to miesto v našom počítači. Ukážeme vám, ako tieto súbory odstrániť pomocou jednoduchých kódov VBA.

Zabite metódu na odstránenie súborov v priečinku pomocou kódu VBA

Jednoduchá funkcia KILL vymaže priečinok, konkrétny súbor, všetky súbory programu Excel atď. Prezrite si syntax metódy KILL vo VBA. Metóda Kill nemôže vymazať súbory iba na čítanie.

Názov cesty : cesta nie je nič iné ako cesta k priečinku v počítači na odstránenie súborov.

Poznámka: Názov cesty môže obsahovať aj zástupné znaky. Ako zástupné znaky v programe Excel môžeme použiť hviezdičku (*) a otázniky (?).

Hviezdička (*) je užitočná na priradenie ľubovoľného reťazca akejkoľvek dĺžky, a to aj pri zohľadnení nuly.

Otáznik (?) Je vhodný na priradenie iba jedného znaku.

Odstrániť konkrétny názov súboru

Mám napríklad priečinok ako nižšie.

V tomto priečinku chcem odstrániť súbor s názvom „Súbor 5“. Spustite kód funkciou KILL.

Kód:

 Sub Delete_Files () Kill (PathName) End Sub 

Skopírujte a prilepte cestu k priečinku.

A vložte do úvodzoviek.

Zabite „E: \ Excel Files“

Teraz vložte ešte jednu spätnú lomku (\) a zadajte názov súboru s príponou.

Zabite „E: \ Excel Files \ File5.xlsx“

Keď spustíte tento kód, vymaže sa z cesty k priečinku súbor s názvom „File 5.xlsx“.

Odstrániť všetky súbory programu Excel

Na odstránenie všetkých súborov programu Excel v priečinku pomocou VBA musíme použiť zástupné znaky s funkciou KILL. Po uvedení cesty k priečinku musíme spomenúť súbor ako „* .xl *“

Kód:

Zabite „E: \ Excel Files \ *. Xl *“

Keď spustíte tento kód, odstránia sa všetky súbory programu Excel v priečinku.

Videli sme, ako môžeme vymazať jeden súbor programu Excel a všetky súbory programu Excel. Ale ak chceme vymazať všetky súbory v priečinku, ako ich môžeme vymazať. Pretože používame program Excel VBA, môže odstrániť ďalšie súbory?

Odpoveď je Áno !!! Použite nasledujúci kód na odstránenie všetkých súborov v priečinku.

Kód:

Zabite „E: \ Excel Files \ *. *“

Odstrániť iba celý priečinok

Je možné odstrániť celý samotný priečinok?

Áno, je to možné.

Aby sme to dosiahli, prvá vec, ktorú musíme urobiť, je musíme vymazať všetky súbory v priečinku pomocou funkcie KILL a potom na odstránenie priečinka musíme použiť ešte jednu funkciu s názvom RmDir .

Kód:

RmDir "E: \ súbory Excel"

Tu RmDir vymaže iba prázdny priečinok, ak je tam nejaký podpriečinok, nemôže ich vymazať.

Odstráňte všetky textové súbory v priečinku

Na odstránenie všetkých textových súborov v priečinku použite nasledujúci kód.

Kód:

Zabite „E: \ Excel Files \ *. Txt“

Odstráňte súbory iba na čítanie

Ako som povedal, funkcia KILL nemôže vymazať súbory „Iba na čítanie“ v priečinku. V takom prípade musíme použiť ďalšie dve funkcie „Dir $“ a „SetAttr“. Nižšie je uvedený príklad kódu na odstránenie súborov iba na čítanie.

Kód:

 Sub Delete_Files1() Dim DeleteFile As String DeleteFile = " E:\Excel Files\" If Len(Dir$(DeleteFile)) > 0 Then SetAttr DeleteFile, vbNormal Kill DeleteFile End If End Sub 

You can download this VBA Delete File Excel Template from here – VBA Delete File Excel Template