VBA Radera fil - Hur tar jag bort filer i mappen med VBA-kod?

Innehållsförteckning

I VBA kan vi ta bort alla filer som finns i datorn med hjälp av VBA-koder och koden som används för att ta bort en fil kallas Kill-kommandot, metoden för att radera en fil är den första, vi ger sökvägen till filen vilket betyder var filen finns i datorn och sedan använder vi kommandot Kill för att radera filen.

Hur tar jag bort filer med VBA-kod?

VBA är en tuff sak i början, men när du spenderar mer tid med VBA, kommer du att börja älska det precis som jag. Vi kan öppna filer från en annan mapp på en dator, vi kan arbeta med dem, och nu kan vi också ta bort filer genom att använda VBA-kodning. I den här artikeln visar vi dig hur du kan radera filer med VBA-kod i den specifika mappen.

När vi arbetar med stora projekt skapar vi vanligtvis många mellanfiler för att stödja vår process. När allt arbete är klart måste vi ta bort dessa filer för att undvika någon form av förvirring i framtiden.

Och ett scenario är när vi vanligtvis får ett e-postmeddelande. Vi sparar bilagor för vårt vanliga arbete, eller vi vill bara se rapporten för den tidpunkten, och senare kan vi behöva ta bort dessa filer.

Om du tar bort dessa filer manuellt tar det tid, eller vi kan glömma att spara, och det tar upp platsen på vår dator. Vi visar dig hur du tar bort dessa filer med enkla VBA-koder.

Döda metod för att radera filer i en mapp med VBA-kod

En enkel KILL-funktion tar bort mappen, den specifika filen, alla excel-filer, etc. Ta en titt på syntaxen för KILL-metoden i VBA. Dödsmetoden kan inte ta bort skrivskyddade filer.

Sökväg : sökväg är inget annat än mappsökvägen i datorn för att ta bort filerna.

Obs! Sökväg kan också innehålla jokertecken. Vi kan använda en asterisk (*) och frågetecken (?) Som jokertecken i Excel.

Asterisk (*) är användbar för att matcha alla strängar av vilken längd som helst, till och med noll anses.

Frågetecken (?) Är användbart för att endast matcha ett enda tecken.

Ta bort särskilt filnamn

Till exempel har jag en mapp som nedan.

I den här mappen vill jag ta bort filen ”File 5”. Starta koden med KILL-funktionen.

Koda:

Sub Delete_Files () Kill (PathName) End Sub

Kopiera och klistra in mappvägen.

Och klistra in dubbla citat.

Döda "E: Excel-filer"

Sätt nu ett bakåt snedstreck () och ange filnamnet med tillägget.

Döda "E: Excel Files File5.xlsx"

När du kör den här koden kommer den att ta bort filen med namnet "File 5.xlsx" i den nämnda mappvägen.

Ta bort alla Excel-filer

För att ta bort alla excel-filer i mappen med VBA, måste vi använda jokertecken med KILL-funktionen. Efter att ha nämnt mappvägen måste vi nämna filen som "* .xl *."

Koda:

Döda "E: Excel Files *. Xl *"

När du kör den här koden raderas alla excel-filer i mappen.

We have seen how we can delete a single excel file and all the excel files. But if we want to delete all the files in the folder, how can we delete it. Since we are using Excel VBA, can it delete other files?

The answer is Yes!!! Use the below code to delete all the files in the folder.

Code:

Kill "E:Excel Files*.*"

Delete Entire Folder Only

Is it possible to delete the entire folder itself?

Yes, it is possible.

To do this, the first thing we need to do is we need to delete all the files in the folder by using the KILL function and then to delete the folder, and we need to use one more function called RmDir.

Code:

RmDir "E:Excel Files "

Here RmDir will delete only the empty folder if any subfolder is where it cannot delete them.

Delete All the Text Files in the Folder

För att radera alla textfiler i mappen använder du koden nedan.

Koda:

Döda "E: Excel Files *. Txt"

Ta bort skrivskyddade filer

Som jag sa KILL-funktionen kan inte ta bort “Read Only” -filer i mappen. I ett sådant fall måste vi använda de andra två funktionerna "Dir $" & "SetAttr" -funktioner. Nedan följer exempelkoden för att ta bort de skrivskyddade filerna också.

Koda:

Sub Delete_Files1 () Dim DeleteFile As String DeleteFile = "E: Excel Files " Om Len (Dir $ (DeleteFile))> 0 Sedan SetAttr DeleteFile, vbNormal Döda DeleteFile End Om End Sub

Du kan ladda ner denna Excel-mall för VBA-radera härifrån - VBA-radera Excel-mall.

Intressanta artiklar...