VBA Skontrolujte súbor existuje Funkcia VBA DIR na kontrolu súboru existuje

Obsah:

Anonim

Skontrolujte súbor existuje pomocou Excel VBA

VBA Check File Exists pomáha kontrolovať, či súbor existuje v umiestnení pomocou Excel VBA. Po spomenutí cesty k súboru v počítači, čo v prípade, že niekto odstráni súbor alebo zmení cestu k priečinku v súbore, náš kód samozrejme v takýchto prípadoch vyvolá chybu. Na vyriešenie tohto problému môžeme urobiť jednu vec predtým, ako súbor skutočne otvoríme, môžeme skontrolovať, či uvedený súbor existuje alebo nie.

V tomto článku vám ukážeme, ako skontrolovať, či konkrétny uvedený súbor existuje alebo nie.

Ako skontrolovať, či súbor existuje alebo nie?

  • Ako vyniká VBA, či súbor existuje alebo nie?
  • V predvolenom nastavení to nemôže !!!
  • Tak ako potom?
  • Na kontrolu, či súbor existuje alebo nie, musíme použiť funkciu s názvom „Dir“.

Čo robí funkcia DIR?

Funkcia VBA DIR vráti názov súboru s príponou v zadanej ceste k priečinku. Ak priečinok nemá žiadny súbor, vráti prázdny reťazec.

Takže pomocou tejto funkcie môžeme skutočne otestovať, či súbor existuje alebo nie. Aj bez funkcie DIR môžeme otestovať, či súbor existuje alebo nie. Ukážeme si niektoré príklady uvedené nižšie.

Ako používať kontrolný súbor VBA v Exceli?

Naučíme sa, ako používať funkciu kontroly súborov VBA s externými príkladmi.

Túto šablónu VBA Check File Exists Excel si môžete stiahnuť tu - VBA Check File Exists Excel Template

Príklad č. 1 - Kontrola súboru VBA existuje

Dobre, napíšme nejaký kód, aby sme otestovali, či súbor existuje alebo nie. Pri písaní kódu postupujte podľa pokynov uvedených nižšie.

Krok 1: Za týmto účelom prejdite do okna VBA a v ponuke Vložiť vyberte modul, ako je uvedené nižšie.

Krok 2: Spustite podprogram.

kód:

 Sub File_Example () End Sub 

Krok 3: Definujte premennú ako String.

kód:

 Sub File_Example () Dim FilePath ako reťazec End Sub 

Krok 4: Teraz chcem otestovať súbor s názvom „Kapitola-11. InputBoxes.xlsm “na mojom E-disku”. K tejto premennej priradím cestu k súboru.

kód:

 Sub File_Example () Dim FilePath As String FilePath = "D: \ Test File.xlsx" End Sub 

Krok 5: Teraz definujte jednu ďalšiu premennú na použitie funkcie DIR.

kód:

 Sub File_Example () Dim FilePath ako String Dim FileExists As String FilePath = "D: \ Test File.xlsx" End Sub 

Krok 6: Teraz pre druhú funkciu DIR s otvorenou premennou.

kód:

 Sub File_Example () Dim FilePath ako String Dim FileExists As String FilePath = "D: \ Test File.xlsx" FileExists = Dir (End Sub 

Krok 7: Funkcia DIR vyžaduje cestu k súboru. Pretože sme už cestu k súboru priradili premennej „FilePath“, môžeme túto premennú jednoducho odovzdať funkcii DIR.

kód:

 Sub File_Example () Dim FilePath ako String Dim FileExists As String FilePath = "D: \ Test File.xlsx" FileExists = Dir (FilePath) End Sub 

Krok 8: Funkcia DIR teraz vracia iba názov súboru ako „Kapitola-11. InputBoxes “z uvedenej cesty k súboru. Ukážme výsledok v okne správy.

kód:

 Sub File_Example () Dim FilePath ako String Dim FileExists As String FilePath = "D: \ Test File.xlsx" FileExists = Dir (FilePath) MsgBox FileExits End Sub Sub 

Krok 9: Teraz spustite makro, aby ste videli výsledok.

Pretože v spomenutej ceste existuje súbor, naša funkcia DIR filtrovala názov súboru z obrovskej cesty.

Krok 10: Teraz zmením názov súboru na inú vec, ktorá sa v uvedenej ceste nenachádza.

kód:

 Sub File_Example () Dim FilePath ako String Dim FileExists As String FilePath = "D: \ File.xlsx" FileExists = Dir (FilePath) MsgBox (FileExists) End Sub 

Krok 11: Ak teraz spustím kód, vráti prázdny reťazec do okna správy.

Funkcia DIR je najvhodnejšia na použitie s príkazom IF vo VBA. Hore sme videli iba názov súboru s príponou, ak existuje, inak sme videli iba prázdny reťazec.

Príklad č. 2 - DIR s podmienkou IF

Krok 1: Ale pomocou príkazu IF s funkciou DIR môžeme zmeniť naše výsledky. Napríklad pozri nižšie uvedený kód.

kód:

 Sub File_Example1 () Dim FilePath ako reťazec Dim FileExists ako reťazec FilePath = "C: \ Users \ cba_28 \ Desktop \ Alex \ Final Input.xlsm" FileExists = Dir (FilePath) Ak FileExists = "" Potom MsgBox "Súbor v spomenutá cesta "Else MsgBox" Súbor existuje v spomenutej ceste "End If End Sub 

Krok 2: Tu podmienka IF skontroluje, či hodnota premennej „FileExists“ nie je nič („“) alebo nie. Ak hodnota premennej nie je nič („“), vráti výsledok ako „Súbor neexistuje v uvedenej ceste“ alebo inak vráti výsledok ako „Súbor existuje v uvedenej ceste“

Nižšie je uvedený príklad snímka rovnakej obrazovky.

Pomocou funkcie DIR môžeme skontrolovať, či súbor existuje alebo nie.

Odporúčané články

Toto je príručka pre kontrolu súborov VBA existuje. Tu diskutujeme o tom, ako používať Excel VBA Check File Exists Function spolu s praktickými príkladmi a stiahnuteľnou šablónou Excel. Môžete si tiež prečítať naše ďalšie navrhované články -

  1. Kopírovať funkciu vloženia vo VBA
  2. Funkcia podčiarknutia Excel
  3. Dolný index VBA je mimo rozsahu
  4. Excel ISNUMBER vzorec