VBA Slett fil | Hvordan sletter du filer i mappen ved hjelp av VBA-kode?

I VBA kan vi slette alle filer som er til stede på datamaskinen ved hjelp av VBA-koder, og koden som brukes til å slette en fil er kjent som Kill-kommandoen. Metoden for å slette en fil er den første, vi gir banen til filen som betyr hvor filen ligger i datamaskinen, og deretter bruker vi kommandoen Kill for å slette filen.

Hvordan sletter jeg filer med VBA-kode?

VBA er den tøffe tingen i begynnelsen, men når du bruker mer tid med VBA, vil du begynne å elske det akkurat som meg. Vi kan åpne filer fra en annen mappe på en datamaskin, vi kan jobbe med dem, og nå kan vi også slette filer ved å bruke VBA-koding. I denne artikkelen vil vi vise deg hvordan du kan slette filer ved hjelp av VBA-kode i den spesifikke mappen.

Når vi jobber med store prosjekter, lager vi vanligvis mange mellomfiler for å støtte prosessen vår. Når alt arbeidet er gjort, må vi slette disse filene for å unngå forvirring i fremtiden.

Og et scenario er når vi vanligvis mottar en e-post, vi lagrer vedlegg for vårt vanlige arbeid, eller vi vil bare se rapporten for det tidspunktet, og senere må vi kanskje slette disse filene.

Å slette disse filene manuelt vil ta tid, eller vi kan glemme å lagre, og det vil oppta plassen på datamaskinen vår. Vi viser deg hvordan du sletter disse filene med enkle VBA-koder.

Drep metoden for å slette filer i en mappe ved hjelp av VBA-kode

En enkel KILL-funksjon vil slette mappen, den spesifikke filen, alle excel-filer osv. Ta en titt på syntaksen til KILL-metoden i VBA. Kill-metoden kan ikke slette skrivebeskyttede filer.

Banenavn: banenavn er ikke annet enn mappebanen på datamaskinen for å slette filene.

Merk: Banenavnet kan også inneholde jokertegn. Vi kan bruke en stjerne (*) og spørsmålstegn (?) Som jokertegn i Excel.

Asterisk (*) er nyttig for å matche enhver streng av hvilken som helst lengde, til og med null.

Spørsmålstegn (?) Er nyttig for å matche bare ett tegn.

Slett bestemt filnavn

For eksempel har jeg en mappe som nedenfor.

I denne mappen vil jeg slette filen som heter "File 5". Start koden med KILL-funksjonen.

Kode:

 Sub Delete_Files () Drep (PathName) Slutt Sub 

Kopier og lim inn mappestien.

Og lim inn doble anførselstegn.

Drep "E: \ Excel Files"

Sett nå en skråstrek til (\) og skriv inn filnavnet med utvidelsen.

Drep "E: \ Excel Files \ File5.xlsx"

Når du kjører denne koden, vil den slette filen som heter "File 5.xlsx" i den nevnte mappebanen.

Slett alle Excel-filer

For å slette alle excel-filene i mappen ved hjelp av VBA, må vi bruke jokertegn med KILL-funksjon. Etter å ha nevnt mappestien, må vi nevne filen som “* .xl *”

Kode:

Drep "E: \ Excel Files \ *. Xl *"

Når du kjører denne koden, slettes alle excel-filene i mappen.

Vi har sett hvordan vi kan slette en enkelt Excel-fil og alle Excel-filene. Men hvis vi vil slette alle filene i mappen, hvordan kan vi slette den. Siden vi bruker Excel VBA, kan den slette andre filer?

Svaret er ja !!! Bruk koden nedenfor for å slette alle filene i mappen.

Kode:

Drep "E: \ Excel Files \ *. *"

Slett bare hele mappen

Er det mulig å slette hele mappen selv?

Ja det er mulig.

For å gjøre dette, er det første vi trenger å gjøre, at vi må slette alle filene i mappen ved å bruke KILL-funksjonen, og deretter for å slette mappen, må vi bruke en annen funksjon som heter RmDir .

Kode:

RmDir "E: \ Excel Files \"

Her vil RmDir bare slette den tomme mappen, hvis noen undermappe er der, kan den ikke slette dem.

Slett alle tekstfilene i mappen

For å slette alle tekstfilene i mappen, bruk koden nedenfor.

Kode:

Drep "E: \ Excel Files \ *. Txt"

Slett skrivebeskyttede filer

Som jeg sa, kan ikke KILL-funksjonen slette "Read Only" -filer i mappen. I et slikt tilfelle må vi bruke de to andre funksjonene "Dir $" og "SetAttr" -funksjonene. Nedenfor er eksempelkoden for å slette de skrivebeskyttede filene også.

Kode:

 Sub Delete_Files1() Dim DeleteFile As String DeleteFile = " E:\Excel Files\" If Len(Dir$(DeleteFile)) > 0 Then SetAttr DeleteFile, vbNormal Kill DeleteFile End If End Sub 

You can download this VBA Delete File Excel Template from here – VBA Delete File Excel Template