Come eliminare cartelle utilizzando vba (con esempi)


È possibile utilizzare i seguenti metodi in VBA per eliminare le cartelle:

Metodo 1: elimina tutti i file nella cartella

 Sub DeleteFolderContents()
    
    On Error Resume Next
    Kill “ C:\Users\bobbi\Desktop\My_Data\*.*On Error GoTo 0

End Sub

Questa particolare macro eliminerà tutti i file nella cartella denominata My_Data .

Metodo 2: elimina l’intera cartella

 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

Questa particolare macro eliminerà l’intera cartella My_Data in modo che non esista più.

La riga On Error Resume Next indica a VBA che se si verifica un errore e la cartella non viene trovata, non dovrebbe essere visualizzato alcun messaggio di errore.

Utilizziamo quindi On Error GoTo 0 per ripristinare i messaggi di errore alle impostazioni predefinite.

Se vuoi visualizzare un messaggio di errore se la cartella non viene trovata, rimuovi semplicemente queste due righe dal codice.

I seguenti esempi mostrano come utilizzare in pratica ciascun metodo con la seguente cartella denominata My_Data che contiene tre file Excel:

Esempio 1: eliminare tutti i file nella cartella utilizzando VBA

Diciamo che vogliamo utilizzare VBA per eliminare tutti i file dalla cartella denominata My_Data .

Per fare ciò possiamo creare la seguente macro:

 Sub DeleteFolderContents()
    
    On Error Resume Next
    Kill “ C:\Users\bobbi\Desktop\My_Data\*.*On Error GoTo 0

End Sub

Una volta eseguita questa macro e aperta nuovamente la cartella, vedremo che tutti i file sono stati eliminati:

Esempio 2: eliminare un’intera cartella utilizzando VBA

Se desideri utilizzare VBA per eliminare l’intera cartella denominata My_Data in modo che non esista più, puoi creare la seguente macro:

 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

Una volta eseguita questa macro e aperto Esplora file, vedremo che la cartella denominata My_Data non esiste più:

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:

VBA: come contare il numero di fogli in una cartella di lavoro
VBA: come estrarre i dati da un’altra cartella di lavoro
VBA: come eliminare un foglio se il nome contiene testo specifico

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *