Innehållsförteckning
En av de mest fördelaktiga användningarna av Excel VBA i vårt dagliga liv är att vi kan kontrollera om en fil finns på vår dator eller inte med hjälp av den. I den här artikeln ska jag visa dig hur du kan kontrollera om en fil finns eller inte på våra datorer med hjälp av Excel. VBA .
VBA-kod för att kontrollera om en fil finns eller inte (snabbvisning)
Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Filen finns inte." Else MsgBox "Filen finns." End If End Sub
Ladda ner övningsboken
Ladda ner den här arbetsboken för att träna medan du läser den här artikeln.
VBA Kontrollera om en fil finns.xlsmEn översikt över VBA-koden för att kontrollera om en fil finns eller inte (steg-för-steg-analys)
Låt oss därför utan dröjsmål gå över till dagens huvuddiskussion. Vi kommer att dela upp de VBA kod steg för steg för att lära oss hur vi kontrollerar om en fil finns eller inte finns på våra datorer.
⧪ Steg 1: Infoga nödvändig input
I början av koden måste vi sätta in de nödvändiga uppgifterna i den. Det finns bara en uppgift som krävs i den här koden, och det är namnet på den fil som vi letar efter. Sätt in det fullständiga filnamnet (tillsammans med den tillhörande katalogen).
File_Name = "C:\ExcelWIKI\Book1.xlsm"
⧪ Steg 2: Extrahera filnamnet med VBA Dir-funktionen
Därefter använder vi ett litet knep: Vi använder VBA Dir-funktion för att ta fram namnet på filen. Om det inte finns någon sådan fil, kommer Dir-funktion returnerar en nollsträng.
File_Name = Dir(File_Name)
⧪ Steg 3: Kontrollera om filen finns med hjälp av ett If-block
Detta är det viktigaste steget. Vi har tidigare berättat att om det inte finns någon fil med det angivna namnet returnerar Dir-funktionen en nollsträng. Vi kommer att använda denna egenskap i en If-block för att kontrollera om filen finns eller inte.
If File_Name = "" Then MsgBox "Filen finns inte." Else MsgBox "Filen finns." End If
Så den fullständiga VBA koden kommer att vara:
⧭ VBA-kod:
Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Filen finns inte." Else MsgBox "Filen finns." End If End Sub
⧭ Utgång:
Kör koden. På min dator visas en meddelanderuta, "Filen finns" eftersom den faktiskt finns på min dator.
På din maskin kan utmatningen vara annorlunda beroende på om filen finns eller inte.
Läs mer: Excel VBA: Kontrollera om ett ark finns (2 enkla metoder)
Utveckla ett makro för att kontrollera om ett intervall av filer finns eller inte med Excel VBA
Här har vi en datamängd i ett Excel-arbetsblad som innehåller namnet på några filer tillsammans med katalogerna i intervallet B4:B8 .
Vårt mål är att utveckla en makro som skriver Finns/finns inte bredvid var och en av dem efter att ha kontrollerat om de finns på datorn eller inte.
⧪ Steg 1: Öppna VBA-fönstret
Tryck på ALT + F11 på tangentbordet för att öppna Visual Basic fönster.
⧪ Steg 2: Infoga en ny modul
Gå till Infoga> Modul i verktygsfältet. Klicka på Modul En ny modul som heter Modul1 (eller något annat beroende på din tidigare historia) öppnas.
⧪ Steg 3: Lägg in VBA-koden
Det här är det viktigaste steget. VBA kod i modulen.
⧭ VBA-kod:
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
⧪ Steg 5: Kör koden
Klicka på Kör Sub / UserForm i verktygsfältet ovan.
Koden kommer att köras. Och du får följande resultat "Finns" för de filer som finns, och "Finns inte" för de filer som inte finns.
Läs mer: Kontrollera om värdet finns i ett intervall i Excel (8 sätt)
Slutsats
Detta är därför processen för att utveckla en Makro för att skicka ett e-postmeddelande från Excel med en bilaga. Har du några frågor? Fråga oss gärna. Och glöm inte att besöka vår webbplats ExcelWIKI för fler inlägg och uppdateringar.