Excel VBA: Kontrola existencie alebo neexistencie súboru

  • Zdieľajte To
Hugh West

Jedno z najvýhodnejších použití programu Excel VBA v našom každodennom živote je to, že pomocou neho môžeme skontrolovať, či súbor na našom počítači existuje alebo nie. V tomto článku vám ukážem, ako môžete pomocou programu Excel skontrolovať, či súbor na našom počítači existuje alebo nie. VBA .

Kód VBA na kontrolu existencie alebo neexistencie súboru (rýchle zobrazenie)

 Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Súbor neexistuje." Else MsgBox "Súbor existuje." End If End Sub 

Stiahnite si cvičebnicu

Stiahnite si tento cvičebný zošit, aby ste si počas čítania tohto článku precvičili svoje zručnosti.

VBA Kontrola existencie súboru.xlsm

Prehľad kódu VBA na kontrolu existencie alebo neexistencie súboru (analýza krok za krokom)

Takže bez ďalšieho zdržiavania prejdime k našej dnešnej hlavnej diskusii. VBA kód krok za krokom, aby sme sa naučili, ako skontrolovať, či súbor v našom počítači existuje alebo nie.

⧪ Krok 1: Vloženie potrebných vstupov

Hneď na začiatku kódu doň musíme vložiť potrebný vstup. V tomto kóde je potrebný len jeden vstup, a to názov súboru, ktorý hľadáme. Vložte celý názov súboru (Spolu s príslušným adresárom).

 File_Name = "C:\ExcelWIKI\Book1.xlsm" 

⧪ Krok 2: Extrahovanie názvu súboru pomocou funkcie VBA Dir

Ďalej použijeme malý trik. VBA Funkcia Dir na extrahovanie názvu súboru. Ak takýto súbor neexistuje, Funkcia Dir vráti nulový reťazec.

 File_Name = Dir(File_Name) 

⧪ Krok 3: Kontrola existencie súboru pomocou bloku If

Toto je najdôležitejší krok. Už skôr sme si povedali, že ak žiadny súbor s daným názvom neexistuje, funkcia Dir vráti nulový reťazec. Túto vlastnosť použijeme v rámci If-block skontrolovať, či súbor existuje alebo nie.

 If File_Name = "" Then MsgBox "Súbor neexistuje." Else MsgBox "Súbor existuje." End If 

Takže kompletný VBA kód bude:

Kód VBA:

 Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Súbor neexistuje." Else MsgBox "Súbor existuje." End If End Sub 

Výstup:

Spustite kód. Na mojom počítači sa zobrazí okno so správou, "Súbor existuje" , pretože v mojom počítači skutočne existuje.

Na vašom počítači sa výstup môže líšiť v závislosti od toho, či súbor existuje alebo nie.

Prečítajte si viac: Excel VBA: Kontrola existencie listu (2 jednoduché metódy)

Vývoj makra na kontrolu existencie alebo neexistencie rozsahu súborov pomocou programu Excel VBA

Tu máme súbor údajov v hárku programu Excel, ktorý obsahuje názvy niektorých súborov spolu s adresármi v rozsahu B4:B8 .

Naším cieľom je vytvoriť makro, ktoré bude písať Existuje / Neexistuje vedľa každého z nich po kontrole, či v počítači existujú alebo nie.

⧪ Krok 1: Otvorenie okna VBA

Tlač ALT + F11 na klávesnici otvoriť Visual Basic okno.

⧪ Krok 2: Vloženie nového modulu

Prejsť na Vložiť> Modul na paneli nástrojov. Kliknite na Modul . Nový modul s názvom Modul1 (alebo čokoľvek iné v závislosti od vašej predchádzajúcej histórie).

⧪ Krok 3: Vloženie kódu VBA

Toto je najdôležitejší krok. Vložte nasledujúce VBA kód v module.

Kód VBA:

 Sub Check_If_a_Range_of_File_Exist() Set Rng = ActiveSheet.Range("B4:B8") For i = 1 To Rng.Rows.Count File_Name = Dir(Rng.Cells(i, 1)) If File_Name = "" Then Rng.Cells(i, 2) = "Doesn't Exist" Else Rng.Cells(i, 2) = "Exists" End If Next i End Sub 

⧪ Krok 5: Spustenie kódu

Kliknite na Spustiť podponuku / UserForm z panela nástrojov vyššie.

Kód sa spustí. A dostanete "Existuje" pre existujúce súbory a "Neexistuje" pre neexistujúce súbory.

Prečítajte si viac: Ako skontrolovať, či hodnota existuje v rozsahu v programe Excel (8 spôsobov)

Záver

Preto je to proces na vytvorenie Makro na odoslanie e-mailu z programu Excel s prílohou. Máte nejaké otázky? Neváhajte sa nás opýtať. A nezabudnite navštíviť našu stránku ExcelWIKI pre ďalšie príspevky a aktualizácie.

Hugh West je veľmi skúsený tréner a analytik Excelu s viac ako 10-ročnými skúsenosťami v tomto odvetví. Má bakalársky titul v odbore účtovníctvo a financie a magisterský titul v odbore Business Administration. Hugh má vášeň pre vyučovanie a vyvinul jedinečný vyučovací prístup, ktorý sa dá ľahko sledovať a pochopiť. Jeho odborné znalosti Excelu pomohli tisíckam študentov a profesionálov na celom svete zlepšiť svoje zručnosti a vyniknúť vo svojej kariére. Hugh sa prostredníctvom svojho blogu delí o svoje znalosti so svetom a ponúka bezplatné výukové programy Excelu a online školenia, ktoré jednotlivcom a firmám pomôžu naplno využiť ich potenciál.