VBA : Comment supprimer des feuilles sans invite ni avertissement
Lorsque vous utilisez la méthode Supprimer dans VBA pour supprimer une feuille spécifique dans un classeur, Excel émettra une invite vous demandant si vous êtes sûr de vouloir supprimer la feuille.
Cependant, vous pouvez utiliser la syntaxe suivante dans VBA pour supprimer une feuille sans invite ni boîte d’avertissement :
Sub DeleteSheets()
'turn off display alerts
Application.DisplayAlerts = False
'delete Sheet1
Sheets("Sheet1").Delete
'turn back on display alerts
Application.DisplayAlerts = True
End Sub
Cette macro particulière supprime la feuille appelée Sheet1 sans aucune invite ni boîte d’avertissement.
La ligne Application.DisplayAlerts=False indique à VBA de désactiver toutes les alertes d’affichage dans Excel.
Nous utilisons ensuite la méthode Supprimer pour supprimer une feuille spécifique.
Nous utilisons ensuite Application.DisplayAlerts=True pour réactiver les alertes d’affichage.
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : utiliser VBA pour supprimer une feuille sans invite ni avertissement
Supposons que nous ayons le classeur Excel suivant contenant trois feuilles :
Supposons maintenant que nous souhaitions créer une macro pour supprimer la feuille appelée Sheet1 .
Supposons que nous créions la macro suivante :
Sub DeleteSheets()
'delete Sheet1
Sheets("Sheet1").Delete
End Sub
Lorsque nous exécutons cette macro, nous recevrons un message nous demandant si nous sommes sûrs de vouloir supprimer cette feuille :
Cependant, nous pouvons créer la macro suivante pour supprimer Sheet1 sans aucune invite :
Sub DeleteSheets()
'turn off display alerts
Application.DisplayAlerts = False
'delete Sheet1
Sheets("Sheet1").Delete
'turn back on display alerts
Application.DisplayAlerts = True
End Sub
Lorsque nous exécutons cette macro, la feuille appelée Sheet1 est automatiquement supprimée et aucune invite n’apparaît :
Notez que Sheet1 a été supprimée alors que les deux autres feuilles sont restées intactes.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
VBA : Comment compter le nombre de feuilles dans un classeur
VBA : Comment extraire des données d’un autre classeur
VBA : comment insérer plusieurs lignes