Excel VBA: Verificați dacă un fișier există sau nu

  • Imparte Asta
Hugh West

Una dintre cele mai avantajoase utilizări ale Excel VBA în viața noastră de zi cu zi este că putem verifica dacă un fișier există sau nu pe calculatorul nostru folosind-o. În acest articol, vă voi arăta cum puteți verifica dacă un fișier există sau nu pe calculatorul nostru folosind Excel VBA .

Cod VBA pentru a verifica dacă un fișier există sau nu (Vizualizare rapidă)

 Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Fișierul nu există." Else MsgBox "Fișierul există." End If End Sub 

Descărcați caietul de practică

Descărcați acest caiet de exerciții pentru a vă exercita în timp ce citiți acest articol.

VBA Verificați dacă există un fișier.xlsm

O prezentare generală a codului VBA pentru a verifica dacă un fișier există sau nu (analiză pas cu pas)

Așadar, fără alte întârzieri, să trecem la discuția principală de astăzi. Vom descompune VBA pas cu pas pentru a învăța cum să verificăm dacă un fișier există sau nu pe calculatorul nostru.

⧪ Pasul 1: Introducerea datelor necesare

Chiar la începutul codului, trebuie să introducem datele de intrare necesare. Există o singură intrare necesară în acest cod, și anume numele fișierului pe care îl căutăm. Introduceți numele complet al fișierului (împreună cu directorul asociat).

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

⧪ Pasul 2: Extragerea numelui fișierului cu funcția VBA Dir

În continuare, vom folosi un mic truc. Vom folosi VBA Funcția Dir pentru a extrage numele fișierului. În cazul în care nu există un astfel de fișier, se va folosi opțiunea Funcția Dir va returna un șir de caractere nul.

 Nume_de_fișier = Dir(Nume_de_fișier) 

⧪ Pasul 3: Verificarea existenței fișierului prin utilizarea unui bloc If-Block

Acesta este pasul cel mai important. Am spus mai devreme că dacă nu există niciun fișier cu numele dat, funcția Dir returnează un șir de caractere nul. Vom folosi această proprietate în cadrul unui fișier If-block pentru a verifica dacă fișierul există sau nu.

 If File_Name = "" Then MsgBox "Fișierul nu există." Else MsgBox "Fișierul există." End If 

Deci, întregul VBA codul va fi:

Cod VBA:

 Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Fișierul nu există." Else MsgBox "Fișierul există." End If End Sub 

Ieșire:

Rulați codul. Pe computerul meu, se va afișa o casetă de mesaje, "Fișierul există" , deoarece există de fapt pe mașina mea.

Pe calculatorul dumneavoastră, rezultatul poate fi diferit în funcție de existența sau nu a fișierului.

Citește mai mult: Excel VBA: Verificați dacă o foaie există (2 metode simple)

Dezvoltarea unui macro pentru a verifica dacă un interval de fișiere există sau nu folosind Excel VBA

Aici avem un set de date într-o foaie de lucru Excel care conține numele unor fișiere împreună cu directoarele din intervalul B4:B8 .

Obiectivul nostru este de a dezvolta un Macro care va scrie Există / Nu există pe lângă fiecare dintre ele, după ce ați verificat dacă există sau nu pe calculator.

⧪ Pasul 1: Deschiderea ferestrei VBA

Apăsați ALT + F11 de pe tastatură pentru a deschide fereastra Visual Basic fereastră.

⧪ Pasul 2: Inserarea unui nou modul

Mergeți la Inserare> Modul din bara de instrumente. Faceți clic pe Modul Un nou modul numit Modul1 (sau orice altceva, în funcție de istoricul dvs.) se va deschide.

⧪ Pasul 3: Introducerea codului VBA

Acesta este cel mai important pas. Introduceți următoarele VBA în modul.

Cod 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 

⧪ Pasul 5: Rularea codului

Faceți clic pe butonul Rulați Sub / UserForm din bara de instrumente de mai sus.

Codul va rula. Și veți obține "Există" pentru fișierele care există, și "Nu există" pentru fișierele care nu există.

Citește mai mult: Cum să verificați dacă valoarea există în interval în Excel (8 moduri)

Concluzie

Prin urmare, acesta este procesul de elaborare a unui Macro pentru a trimite un e-mail din Excel cu un atașament. Aveți întrebări? Nu ezitați să ne întrebați. Și nu uitați să vizitați site-ul nostru ExcelWIKI pentru mai multe postări și actualizări.

Hugh West este un trainer și analist Excel cu o experiență de peste 10 ani în industrie. Deține o diplomă de licență în contabilitate și finanțe și un master în administrarea afacerilor. Hugh are o pasiune pentru predare și a dezvoltat o abordare unică de predare care este ușor de urmărit și de înțeles. Cunoștințele sale experte despre Excel au ajutat mii de studenți și profesioniști din întreaga lume să-și îmbunătățească abilitățile și să exceleze în cariera lor. Prin blogul său, Hugh își împărtășește cunoștințele lumii, oferind tutoriale gratuite Excel și instruire online pentru a ajuta persoanele și companiile să-și atingă întregul potențial.