Mappen verwijderen met vba (met voorbeelden)
U kunt de volgende methoden in VBA gebruiken om mappen te verwijderen:
Methode 1: Verwijder alle bestanden in de map
Sub DeleteFolderContents()
On Error Resume Next
Kill “ C:\Users\bobbi\Desktop\My_Data\*.* ”
On Error GoTo 0
End Sub
Deze specifieke macro verwijdert alle bestanden in de map genaamd My_Data .
Methode 2: verwijder de hele map
SubDeleteFolder ()
On Error Resume Next
'delete all files in folder
Kill “ C:\Users\bobbi\Desktop\My_Data\*.* ”
'delete empty folder
RmDir " C:\Users\bobbi\Desktop\My_Data\ "
On Error GoTo 0
End Sub
Deze specifieke macro verwijdert de volledige map My_Data , zodat deze niet langer bestaat.
De regel Bij fout hervatten volgende vertelt VBA dat als er een fout optreedt en de map niet wordt gevonden, er geen foutmelding mag worden weergegeven.
Vervolgens gebruiken we On Error GoTo 0 om de foutmeldingen terug te zetten naar de standaardinstellingen.
Als u een foutmelding wilt weergeven als de map niet wordt gevonden, verwijdert u eenvoudigweg deze twee regels uit de code.
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met de volgende map genaamd My_Data , die drie Excel-bestanden bevat:
Voorbeeld 1: verwijder alle bestanden in de map met VBA
Laten we zeggen dat we VBA willen gebruiken om alle bestanden te verwijderen uit de map genaamd My_Data .
We kunnen hiervoor de volgende macro maken:
Sub DeleteFolderContents()
On Error Resume Next
Kill “ C:\Users\bobbi\Desktop\My_Data\*.* ”
On Error GoTo 0
End Sub
Zodra we deze macro uitvoeren en de map opnieuw openen, zullen we zien dat alle bestanden zijn verwijderd:
Voorbeeld 2: Verwijder een hele map met VBA
Als u VBA wilt gebruiken om de hele map genaamd My_Data te verwijderen, zodat deze niet meer bestaat, kunt u de volgende macro maken:
SubDeleteFolder ()
On Error Resume Next
'delete all files in folder
Kill “ C:\Users\bobbi\Desktop\My_Data\*.* ”
'delete empty folder
RmDir " C:\Users\bobbi\Desktop\My_Data\ "
On Error GoTo 0
End Sub
Zodra we deze macro uitvoeren en de Verkenner openen, zullen we zien dat de map met de naam My_Data niet langer bestaat:
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:
VBA: het aantal vellen in een werkmap tellen
VBA: gegevens uit een andere werkmap extraheren
VBA: een blad verwijderen als de naam specifieke tekst bevat