Note: The other languages of the website are Google-translated. Back to English

Comment supprimer une feuille de calcul en fonction de la valeur de la cellule dans Excel?

En supposant que j'ai plusieurs feuilles de calcul dans un classeur, je souhaite maintenant supprimer les feuilles en fonction de la valeur de la cellule. Par exemple, si la cellule spécifique A1 contient le texte «KTE», toutes les feuilles dont la cellule A1 contient ce texte doivent être supprimées en même temps. Cet article peut vous aider à gérer cette tâche dans Excel.

Supprimer la feuille de calcul en fonction de la valeur de la cellule avec le code VBA


flèche bleue bulle droite Supprimer la feuille de calcul en fonction de la valeur de la cellule avec le code VBA

Ici, je vais introduire un code pour vous permettre de supprimer toutes les feuilles dont la cellule spécifique a une certaine valeur, procédez comme suit:

1. Maintenez la touche ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2Cliquez sur insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: supprimer la feuille de calcul en fonction de la valeur de la cellule:

Sub deletesheetbycell()
'Updateby Extendoffice
    Dim shName As String
    Dim xName As String
    Dim xWs As Worksheet
    Dim cnt As Integer
    shName = Application.InputBox("Input the text to delete the sheets based on:", "Kutools for Excel", _
                                    "", , , , , 2)
    Application.DisplayAlerts = False
    cnt = 0
    For Each xWs In ThisWorkbook.Sheets
        If xWs.Range("A1").Value = shName Then
            xWs.delete
            cnt = cnt + 1
        End If
    Next xWs
    Application.DisplayAlerts = True
    MsgBox "Have deleted" & cnt & "worksheets", vbInformation, "Kutools for Excel"
End Sub

Notes: Dans le code ci-dessus, A1 est la cellule spécifique qui contient le texte sur lequel vous souhaitez supprimer les feuilles.

3. Puis appuyez F5 clé pour exécuter ce code, et une boîte de dialogue s'affiche pour vous rappeler de saisir la valeur spécifique sur laquelle vous souhaitez supprimer les feuilles, voir capture d'écran:

doc supprimer la feuille par cellule 1

4. Et puis cliquez OK bouton, toutes les feuilles dont la cellule A1 a le texte KTE ont été supprimées à la fois. Voir la capture d'écran:

doc supprimer la feuille par cellule 2


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2021 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Commentaires (4)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
question rapide, le code ci-dessus fonctionne pour moi pour supprimer les feuilles de calcul qui contiennent la valeur qui est entrée, mais que se passe-t-il si je veux supprimer les feuilles de calcul qui ne contiennent pas de valeur entrée. J'ai essayé de remplacer l'opérateur "=" par l'opérateur <>", mais cela ne fonctionne pas. Merci !
Ce commentaire a été minimisé par le modérateur sur le site
Ankur,
Comme vous l'avez dit, il vous suffit de changer le "=" en " <>" comme ci-dessous :

Sous deletesheetbycell()
Dim shName As String
Dim xName As String
Feuille de travail Dim xWs As
Dim cnt As Integer
shName = Application.InputBox("Entrez le texte sans supprimer les feuilles basées sur :", "Kutools for Excel", _
"", , , , , 2)
Application.DisplayAlerts = Faux
cnt = 0
Pour chaque xWs dans ThisWorkbook.Sheets
Si xWs.Range("A1").Value <> shName Alors
xWs.Supprimer
cent = cent + 1
Si fin
xW suivants
Application.DisplayAlerts = Vrai
MsgBox "Ai supprimé" & cnt & "feuilles de calcul", vbInformation, "Kutools for Excel"
End Sub

S'il vous plaît essayez, j'espère que cela peut vous aider!
Ce commentaire a été minimisé par le modérateur sur le site
Bonne après-midi,
Pourriez-vous me dire s'il existe un moyen de répondre automatiquement oui lorsque vous êtes invité à supprimer la feuille ? Merci beaucoup.
Ce commentaire a été minimisé par le modérateur sur le site
Re-bonjour, tant pis pour ma dernière question. J'ai ajouté ce qui suit avant et après la ligne Delete : Application.DisplayAlerts = False
Application.DisplayAlerts = Vrai

Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés

Nous suivre

Copyright © 2009 - www.extendoffice.com. | Tous les droits sont réservés. Alimenté par ExtendOffice. | | Plan du site
Microsoft et le logo Office sont des marques commerciales ou des marques déposées de Microsoft Corporation aux États-Unis et / ou dans d'autres pays.
Protégé par Sectigo SSL