Innehållsförteckning:
Video: Räkna med tid i Excel 2024
Med detta Excel-makro kan du skicka en filväg för att utvärdera om filen finns där. Du kan till exempel ha en process som manipulerar en fil någonstans på datorn. Du kan till exempel behöva öppna en befintlig arbetsbok för att lägga till data på den dagligen. I det här fallet kan du behöva testa för att se om filen du behöver manipulera existerar.
Hur makroen fungerar
Det första att märka om detta makro är att det är en funktion, inte en Sub-procedur. Genom att göra det här makrot en funktion kan du överföra vilken fil som helst till den.
I detta makro använder du Dir-funktionen, som returnerar en sträng som representerar namnet på filen som matchar vad du skickar till den. Denna funktion kan användas på många sätt, men här använder du den för att kontrollera om filvägen du skickar till den existerar:
Funktion FileExists (FPath As String) Som Boolean 'Steg 1: Förklara dina variabler Dim FName As String 'Steg 2: Använd Dir-funktionen för att få filnamnet FName = Dir (FPath)' Steg 3: Om filen finns, returnera True; annars falskt om FName "Then FileExists = True _ Else: FileExists = False End Function
Steg 1 förklarar en strängvariabel som innehåller filnamnet som returnerar från Dir-funktionen. FName är namnet på strängvariabeln.
< ! - 2 ->I steg 2 försöker du ställa in FName-variabeln. Du gör detta genom att passera FPath-variabeln till Dir-funktionen. Denna FPath-variabel skickas via funktionsdeklarationerna (se första raden av koden). Den här strukturen förhindrar att du behöver hårdkoda en filväg och överför den som en variabel istället.
Om FName-variabeln inte kan ställas in, existerar inte sökvägen. Fönstret FName variabeln är tom. Steg 3 översätter bara det resultatet till ett sant eller falskt uttryck.
Igen kan den här funktionen användas för att utvärdera vilken filväg du passerar till den. Skönheten att skriva makro som en funktion.
Följande makro visar hur man använder den här funktionen:
Sub Macro1 () Om FileExists ("C: TempMyNewBook. xlsx") = True Då finns MsgBox "Fil existerar." Else MsgBox "-filen existerar inte." Sluta om slutdel
Så här använder du makroet
För att implementera detta makro kan du kopiera och klistra in båda bitarna i en standardmodul:
-
Aktivera Visual Basic Editor genom att trycka på Alt + F11.
-
Högerklicka på projekt / arbetsbokens namn i projektfönstret.
-
Välj Infoga → Modul.
-
Skriv eller klistra in koden i den nyskapade modulen.