Comment supprimer des feuilles sans invites de confirmation en VBA dans Excel
Il y a des moments où nous devons créer ou ajouter une feuille et plus tard, nous avons constaté que cette feuille ne servait à rien, d’où le besoin de supprimer rapidement la feuille du classeur. Cet article se concentre sur le gain de temps et fournit du code pour supprimer des feuilles sans aucune boîte de message d’invite en utilisant la macro / code vba.
Cela peut être une feuille ou plusieurs. Et Excel donne une alerte contextuelle pour confirmer la suppression de la feuille. Si c’est une feuille, c’est gérable. Mais si vous devez supprimer plusieurs feuilles, vous obtiendrez une popup par feuille.
Vous créez souvent plusieurs feuilles à l’aide de VBA. Mais en fin de compte, vous n’avez pas besoin d’eux. Vous voudrez les supprimer une fois votre travail terminé. Cela gardera votre fichier plus léger, plus rapide et plus raisonnable.
Le code VBA pour supprimer une feuille est simple
Sheets("SheetName").Delete
Disons que vous avez ce code pour ajouter une feuille, puis la supprimer une fois le travail terminé.
Sub AddAndDeleteSheet() Sheets.Add 'Adds a new sheet to the active workbook '---- '---- '---- 'some work on sheet done ActiveSheet.Delete 'deletes the active Activesheet End Sub
Lorsque vous exécutez ce code, Sheets.Add fonctionnera sans aucune invite, mais lorsque le compilateur arrivera à ActiveSheet.Delete, il affichera un message comme celui-ci.
Puisque vous supprimez des feuilles à l’aide de VBA, vous savez ce que vous faites.
Vous voudriez dire à Excel de ne pas afficher cet avertissement et de supprimer la fichue feuille.
Pour ce faire, nous désactiverons le bouton d’alerte d’affichage de l’application Excel.
Le code ci-dessous contournera ce message d’alerte et la feuille sera supprimée sans aucune indication.
Sub AddAndDeleteSheet() Application.DisplayAlerts = False 'switching off the alert button Sheets.Add '---- '---- '---- 'some work on sheet done ActiveSheet.Delete Application.DisplayAlerts = True 'switching on the alert button End Sub
Ici, nous supprimons Activesheet en utilisant VBA. Vous pouvez supprimer n’importe quelle feuille à l’aide de VBA. Écrivez juste Sheets (« Sheetname »). Delete. Passons à autre chose …
DisplayAlerts est une propriété de l’objet Application dans VBA. Ici, nous l’éteignons au début de notre code et l’activons à la fin du code. Le code ci-dessus confirmera la suppression sans aucune indication.
_Remarque: _ * Le code ci-dessus ignorera tous les avertissements lancés par Excel. Si vous souhaitez autoriser uniquement la suppression de feuilles, utilisez cette ligne .
Application.DisplayAlerts = False 'switching off the alert button ActiveSheet.Delete Application.DisplayAlerts = True 'switching on the alert button
Cela ignorera uniquement l’avertissement de suppression de feuille.
Pro Tip: Ces lignes de code rendent votre code VBA plus efficace.Utilisez-les toujours au début de votre macro et réactivez-les là où votre code devrait quitter la routine . _Avertissement _ * : Si ce n’est pas activé avant de quitter le sous-programme , il se peut que vous ne voyiez aucun avertissement. Même si votre code n’est pas en cours d’exécution. Cela peut causer de nombreux problèmes . Si vous avez plusieurs feuilles à supprimer et que vous utilisez une boucle, essayez ce code –
Option Explicit Sub macro2() Dim i As Long Application.DisplayAlerts = False For i = 1 to Worksheets.Count If Worksheets(i).Name Like "Test*" Then Worksheets(i).Delete Next i Application.DisplayAlerts = True End Sub
C’est tout. C’est fait. C’est facile comme allumer et éteindre votre ventilateur. N’est-ce pas?
Si vous avez aimé nos blogs, partagez-les avec vos amis sur Facebook. Et vous pouvez également nous suivre sur Twitter et Facebook.
Nous serions ravis de vous entendre, faites-nous savoir comment nous pouvons améliorer, compléter ou innover notre travail et le rendre meilleur pour vous. Écrivez-nous à [email protected]
Télécharger le fichier
`lien: /wp-content-uploads-2013-07-Delete-sheets-without-confirmation-prompts-using-VBA-in-Microsoft-Excel.xls [__ Supprimer les feuilles sans invites de confirmation à l’aide de VBA dans Microsoft Excel]
Articles liés:
link: / printing-in-vba-change-the-default-printer-using-vba-in-microsoft-excel [Change The Default Printer Using VBA in Microsoft Excel 2016]
lien: / general-topics-in-vba-turn-off-warning-messages-using-vba-in-microsoft-excel [Désactiver les messages d’avertissement à l’aide de VBA dans Microsoft Excel 2016]
link: / menus-toolbars-status bar-in-vba-display-a-message-on-the-statusbar-using-vba-in-microsoft-excel [Afficher un message sur la barre d’état Excel VBA]
lien: / general-topics-in-vba-insert-pictures-using-vba-in-microsoft-excel [Insérer des images en utilisant VBA dans Microsoft Excel 2016]
link: / using-loops-how-to-loop-through-sheets-in-excel-using-vba [Comment parcourir des feuilles dans Excel en utilisant VBA]
Articles populaires:
lien: / clavier-formule-raccourcis-50-excel-raccourcis-pour-augmenter-votre-productivité [50 raccourcis Excel pour augmenter votre productivité]
link: / formulas-and-functions-introduction-of-vlookup-function [Comment utiliser la fonction RECHERCHEV dans Excel]
link: / tips-countif-in-microsoft-excel [Comment utiliser la fonction COUNTIF dans Excel]
link: / excel-formule-et-fonction-excel-sumif-function [Comment utiliser la fonction SUMIF dans Excel]