Suppression feuille dont le nom est dans une cellule

  • Initiateur de la discussion Initiateur de la discussion yoyobat
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

yoyobat

XLDnaute Nouveau
Bonjour le forum,

J'ai un problème pour une suppression de feuilles:
Je crée des feuilles qui se nomment automatiquement
Je voudrais en supprimer certaines selon leur nom
Ce nom est affiché dans une cellule d'une feuille qui ne se supprime pas

J'avais peaufiner un bout de code mais
Sheets("Name").Delete ne marche pas.

Voici le code en entier:

Dim plageNoms As Range
Set plageNoms = Range("B10")
Dim Name As String

For Each cell In plageNoms
' là on affecte le contenu de la cellule à la variable Name
Name = cell.Value
' et on supprime l'onglet correspondant
Sheets("Name").Delete
Application.DisplayAlerts = True


Si quelqu'un à une piste ??

Merci beaucoup.

Yoyobat.
 

Pièces jointes

Re : Suppression feuille dont le nom est dans une cellule

Bonjour

ce code, pas forcément optimal, doit fonctionner

le nom de la feuille est en A1 dans mon exemple

Code:
    Sheets(Range("A1").Value).Select
    Application.DisplayAlerts = False
    ActiveWindow.SelectedSheets.Delete
    Application.DisplayAlerts = False
 
Re : Suppression feuille dont le nom est dans une cellule

Bonjour Eric S,

Merci pour ce code qui marche bien pour les feuilles activées.
Serait-il possible d'activer la feuille dont le nom est en A1 (dans ton exemple) afin de la supprimer ensuite ?

En tout cas, merci pour ton aide

Yoyobat
 
Re : Suppression feuille dont le nom est dans une cellule

Bonjour le fil 🙂,
Ton premier code était correct SAUF qu'on affecte jamais une propriété VBA à une variable 😡... Name ne peux pas être utilisé 🙄...
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim plageNoms As Range
Set plageNoms = Range("B10")
Application.DisplayAlerts = False
For Each cell In plageNoms
Sheets(cell.Value).Delete
Next
Application.DisplayAlerts = True
End Sub
par exemple 😛.
Bonne suite 😎
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
742
Réponses
5
Affichages
521
Retour