Kontrollera fil som finns med Excel VBA

VBA Kontrollera fil existerar hjälper till att kontrollera om fil existerar på plats med hjälp av Excel VBA. Efter att ha nämnt filvägen i datorn, om någon raderar filen eller ändrar mappens sökväg, kommer koden naturligtvis att kasta ett fel i sådana fall. För att lösa problemet kan vi göra en sak innan vi faktiskt öppnar filen, vi kan kontrollera om den nämnda filen finns eller inte.

I den här artikeln kommer vi att visa dig hur du kan kontrollera om den nämnda filen finns eller inte.

Hur kontrollerar jag om fil finns eller inte?

  • Hur excell VBA vet om filen finns eller inte ??
  • Som standard kan det inte !!!
  • Så hur då ??
  • Vi måste använda funktionen "Dir" för att kontrollera om filen finns eller inte.

Vad gör DIR-funktionen?

VBA DIR-funktion returnerar namnet på filnamnet med dess förlängning i den angivna mappvägen. När mappen inte har någon fil returnerar den tomma strängen.

Så genom att använda den här funktionen kan vi faktiskt testa om filen finns eller inte. Även utan DIR-funktion kan vi testa om filen finns eller inte. Vi kommer att se några av exemplen nedan.

Hur använder man VBA-kontrollfiler som finns i Excel?

Vi kommer att lära dig att använda en VBA-funktion för kontroll av filexister med få exempel i Excel.

Du kan ladda ner denna VBA-kontrollfil existerar Excel-mall här - VBA-kontrollfil existerar Excel-mall

Exempel 1 - VBA-kontrollfil finns

OK, låt oss skriva lite kod för att testa att filen finns eller inte. Följ stegen nedan för att skriva kod på egen hand.

Steg 1: Gå till VBA-fönstret och välj Modul under Infoga-menyn som visas nedan.

Steg 2: Starta delproceduren.

Koda:

 Sub File_Example () Avsluta Sub 

Steg 3: Definiera variabeln som sträng.

Koda:

 Sub File_Example () Dim FilePath As String End Sub 

Steg 4: Nu vill jag testa filen med namnet “Chapter-11. InputBoxes.xlsm ”i min e-enhet”. Jag tilldelar min filväg till denna variabel.

Koda:

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

Steg 5: Definiera nu ytterligare en variabel för att tillämpa DIR-funktionen.

Koda:

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

Steg 6: Nu för den andra variabeln öppnar DIR-funktionen.

Koda:

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

Steg 7: DIR-funktionen kräver filvägen. Eftersom vi redan har tilldelat filvägen till variabeln "FilePath" kan vi helt enkelt skicka denna variabel till DIR-funktionen.

Koda:

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

Steg 8: Nu DIR-funktionen returnerar bara filnamnet som “kapitel-11. InputBoxes ”från den nämnda filvägen. Så låt oss visa resultatet i en meddelanderuta.

Koda:

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

Steg 9: Kör nu makro för att se resultatet.

Eftersom det finns en fil i den nämnda sökvägen filtrerade vår DIR-funktion filnamnet från den enorma sökvägen.

Steg 10: Nu kommer jag att ändra filnamnet till en annan sak som inte finns där i den nämnda sökvägen.

Koda:

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

Steg 11: Om jag kör koden nu kommer den att returnera en tom sträng i meddelanderutan.

DIR-funktion är bäst lämpad att använda med IF-uttalande i VBA. Ovanför kunde vi bara se filnamnet med dess förlängning om det finns eller annars kunde vi bara se den tomma strängen.

Exempel 2 - DIR med IF-tillstånd

Steg 1: Men med IF-uttalande med DIR-funktion kan vi ändra våra resultat. För exempel, se koden nedan.

Koda:

 Sub File_Example1 () Dim FilePath As String Dim FileExists As String FilePath = "C: \ Users \ cba_28 \ Desktop \ Alex \ Final Input.xlsm" FileExists = Dir (FilePath) Om FileExists = "" Sedan finns MsgBox "-filen inte i filen nämnda sökväg "Annars MsgBox" Fil finns i den nämnda sökvägen "Slut om slut Sub 

Steg 2: Här IF-villkoret kontrollerar om variabeln "FileExists" -värde är ingenting ("") eller inte. Om det variabla värdet är ingenting ("") kommer det att returnera resultatet eftersom "Fil finns inte i den nämnda sökvägen" eller annars kommer det att returnera resultatet som "Fil finns i nämnda sökväg"

Nedan visas exemplet på en skärmdump av samma.

Genom att använda DIR-funktionen kan vi kontrollera om filen finns eller inte.

Rekommenderade artiklar

Detta är en guide till VBA-kontrollfiler som finns. Här diskuterar vi hur du använder Excel VBA Check File Exists Function tillsammans med praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. Kopiera klistra in funktion i VBA
  2. Substring Excel-funktion
  3. VBA-prenumeration utanför räckvidden
  4. Excel ISNUMBER-formel

Kategori: