Indholdsfortegnelse
En af de mest fordelagtige anvendelser af Excel VBA i vores dagligdag er, at vi kan kontrollere, om en fil findes på vores maskine eller ej ved hjælp af den. I denne artikel vil jeg vise dig, hvordan du kan kontrollere, om en fil findes eller ej på vores computere ved hjælp af Excel VBA .
VBA-kode til at kontrollere, om en fil findes eller ej (hurtig visning)
Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Filen eksisterer ikke." Else MsgBox "Filen eksisterer." End If End Sub
Download arbejdsbog til øvelser
Download denne arbejdsbog til træning, så du kan øve dig, mens du læser denne artikel.
VBA Kontroller, om en fil findes.xlsmEn oversigt over VBA-kode til at kontrollere, om en fil findes eller ej (trinvis analyse)
Så lad os uden yderligere forsinkelse gå over til vores hoveddiskussion i dag. Vi vil opdele de VBA kode trin-for-trin for at lære, hvordan man kontrollerer, om en fil findes eller ej på vores computere.
⧪ Trin 1: Indsættelse af de nødvendige input
Lige i starten af koden skal vi indsætte de nødvendige input i den. Der er kun ét input, der kræves i denne kode, og det er navnet på den fil, vi leder efter. Indsæt det fulde filnavn (sammen med den tilhørende mappe).
File_Name = "C:\ExcelWIKI\Book1.xlsm"
⧪ Trin 2: Udtrække filnavnet med VBA Dir-funktionen
Nu skal vi bruge et lille trick: Vi bruger VBA Dir-funktion for at udtrække navnet på filen. Hvis der ikke findes en sådan fil, vil Dir-funktion returnerer en nulstreng.
Fil_Navn = Dir(Fil_Navn)
⧪ Trin 3: Kontrol af, om filen findes ved hjælp af en If-blok
Dette er det vigtigste trin. Vi har tidligere fortalt, at hvis der ikke findes nogen fil med det givne navn, returnerer Dir-funktionen en null-streng. Vi vil bruge denne egenskab i en If-blok for at kontrollere, om filen findes eller ej.
If File_Name = "" Then MsgBox "Filen findes ikke." Else MsgBox "Filen findes." End If
Så den komplette VBA kode vil være:
⧭ VBA-kode:
Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Filen eksisterer ikke." Else MsgBox "Filen eksisterer." End If End Sub
⧭ Output:
Kør koden. På min computer vises en beskedboks, "Filen findes" , fordi den faktisk findes på min maskine.
På din maskine kan resultatet være forskelligt afhængigt af, om filen findes eller ej.
Læs mere: Excel VBA: Kontroller, om et ark findes (2 enkle metoder)
Udvikling af en makro til at kontrollere, om en række filer eksisterer eller ej ved hjælp af Excel VBA
Her har vi et datasæt i et Excel-regneark, der indeholder navnet på nogle filer sammen med mapperne i området B4:B8 .
Vores mål er at udvikle et makroprogram, der kan skrive Eksisterer/eksisterer ikke ved siden af hver enkelt af dem efter at have kontrolleret, om de findes på computeren eller ej.
⧪ Trin 1: Åbning af VBA-vinduet
Tryk på ALT + F11 på dit tastatur for at åbne Visual Basic vindue.
⧪ Trin 2: Indsættelse af et nyt modul
Gå til Indsæt> Modul i værktøjslinjen. Klik på Modul Et nyt modul kaldet Modul1 (eller noget andet afhængigt af din tidligere historik) åbnes.
⧪ Trin 3: Indsætning af VBA-koden
Dette er det vigtigste trin. Indsæt følgende VBA kode i modulet.
⧭ VBA-kode:
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
⧪ Trin 5: Kørsel af koden
Klik på den Kør Sub / UserForm værktøjet fra værktøjslinjen ovenfor.
Koden vil køre, og du vil få "Eksisterer" for de filer, der findes, og "Eksisterer ikke" for de filer, der ikke findes.
Læs mere: Sådan kontrolleres det, om der findes en værdi i et område i Excel (8 måder)
Konklusion
Derfor er dette den proces, der skal udvikle en Makro for at sende en e-mail fra Excel med en vedhæftet fil. Har du spørgsmål? Du er velkommen til at spørge os. Og glem ikke at besøge vores hjemmeside ExcelWIKI for flere indlæg og opdateringer.