Verificați existența fișierelor folosind Excel VBA

VBA Check File Exists ajută la verificarea dacă fișierul există în locație folosind Excel VBA. După ce am menționat calea fișierului din computer, ce se întâmplă dacă cineva șterge fișierul sau schimbă calea folderului fișierului, evident, codul nostru va arunca o eroare în astfel de cazuri. Pentru a rezolva această problemă, putem face un lucru înainte de a deschide efectiv fișierul, putem verifica dacă fișierul menționat există sau nu.

În acest articol, vă vom arăta cum să verificați dacă fișierul menționat există sau nu.

Cum să verificați dacă fișierul există sau nu?

  • Cum știe VBA excel dacă fișierul există sau nu ??
  • În mod implicit, nu se poate !!!
  • Deci, cum?
  • Trebuie să utilizăm funcția numită „Dir” pentru a verifica dacă fișierul există sau nu.

Ce face funcția DIR?

Funcția VBA DIR întoarce numele fișierului cu extensia acestuia în calea folderului specificat. Când folderul nu are niciun fișier, returnează șirul gol.

Așadar, folosind această funcție, putem testa efectiv dacă fișierul există sau nu. Chiar și fără funcția DIR, putem testa dacă fișierul există sau nu. Vom vedea câteva dintre exemplele de mai jos.

Cum se utilizează existența fișierelor de verificare VBA în Excel?

Vom învăța cum să folosiți o funcție de fișiere de verificare a fișierelor VBA, cu câteva exemple în excel.

Puteți descărca acest șablon VBA Check Exists File File aici - VBA Check Exists File Template Excel

Exemplul # 1 - VBA verifică existența fișierelor

Ok, hai să scriem un cod pentru a testa fișierul există sau nu. Urmați pașii de mai jos pentru a scrie codul singur.

Pasul 1: Pentru aceasta, mergeți la fereastra VBA, iar sub meniul Insert, selectați modulul, așa cum se arată mai jos.

Pasul 2: Porniți subprocedura.

Cod:

 Sub Fișier_Exemplu () Final Sub 

Pasul 3: Definiți variabila ca String.

Cod:

 Sub Fișier_Exemplu () Dim FilePath As Sub String 

Pasul 4: Acum vreau să testez fișierul numit „Capitolul 11. InputBoxes.xlsm ”în E-Drive”. Voi atribui calea mea de fișier acestei variabile.

Cod:

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

Pasul 5: Acum definiți o altă variabilă pentru a aplica funcția DIR.

Cod:

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

Pasul 6: Acum pentru a doua variantă deschisă funcția DIR.

Cod:

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

Pasul 7: Funcția DIR necesită calea fișierului. Deoarece am atribuit deja calea fișierului pentru variabila „FilePath”, putem trece pur și simplu această variabilă funcției DIR.

Cod:

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

Pasul 8: Acum, funcția DIR returnează doar numele fișierului ca „capitol-11. InputBoxes ”din calea fișierului menționat. Deci, să arătăm rezultatul într-o casetă de mesaje.

Cod:

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

Pasul 9: Acum rulați macrocomanda pentru a vedea rezultatul.

Deoarece există un fișier în calea menționată, funcția noastră DIR a filtrat numele fișierului de pe calea uriașă.

Pasul 10: Acum voi schimba numele fișierului într-un alt lucru care nu există în calea menționată.

Cod:

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

Pasul 11: Dacă rulez codul acum, acesta va returna un șir gol în caseta de mesaje.

Funcția DIR este cea mai potrivită pentru a fi utilizată cu declarația IF în VBA. Mai sus, am putea vedea doar numele fișierului cu extensia acestuia dacă există sau altfel am putea vedea doar șirul gol.

Exemplul # 2 - DIR cu condiție IF

Pasul 1: Dar folosind instrucțiunea IF cu funcția DIR, ne putem modifica rezultatele. Pentru un exemplu, priviți codul de mai jos.

Cod:

 Sub File_Example1 () Dim FilePath As String Dim FileExists As String FilePath = "C: \ Users \ cba_28 \ Desktop \ Alex \ Final Input.xlsm" FileExists = Dir (FilePath) Dacă FileExists = "" Atunci MsgBox "Fișierul nu există în menționat calea „Else MsgBox” Fișierul există în calea menționată „End If End Sub 

Pasul 2: Aici condiția IF verifică dacă valoarea variabilă „FileExists” nu este nimic („”) sau nu. Dacă valoarea variabilă nu este nimic („”), atunci va întoarce rezultatul, deoarece „Fișierul nu există în calea menționată” sau altfel va returna rezultatul, deoarece „Fișierul există în calea menționată”.

Mai jos este exemplul unei capturi de ecran a aceluiași.

Folosind funcția DIR, putem verifica dacă fișierul există sau nu.

Articole recomandate

Acesta este un ghid pentru VBA Check Exists File. Aici vom discuta despre modul de utilizare a funcției Exista fișiere Verificare Excel VBA împreună cu exemple practice și șablon Excel descărcabil. De asemenea, puteți parcurge și alte articole sugerate -

  1. Copiați funcția Paste în VBA
  2. Substring Funcție Excel
  3. Abonament VBA în afara intervalului
  4. Excel Formula ISNUMBER

Categorie: