Renommer tous les onglets sauf certains

  • Initiateur de la discussion Initiateur de la discussion Kimari
  • 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 !

Kimari

XLDnaute Nouveau
Bonjour 🙂,

Voilà des jours que je me casse la tête sur une macro 😡.
Généralement, je trouve les infos sur le net 😀 mais la je sèche 😕.

Mon problème est simple, j'ai un classeur avec plusieurs feuils nommées :
- Suivi Feuil
- Symbole
- Page 1
- Page 2
- Page 3
- Page 4
etc...

L'utilisateur peut ajouter des Pages (5, 6, etc) celle ci s'incrémente à la suite.
Il peut aussi en supprimer (par exemple là 3) mais le problème c'est que l'ordre devient :
- Suivi Feuil
- Symbole
- Page 1
- Page 2
- Page 4

Je veux donc renommer mes onglets pour avoir
- Suivi Feuil
- Symbole
- Page 1
- Page 2
- Page 4 => qui deviendrais Page 3

Si on n'avait supprimer la page 2
- Suivi Feuil
- Symbole
- Page 1
- Page 3 => qui deviendrait Page 2
- Page 4 => qui deviendrait Page 3

Le nombre de page est aléatoire.
Les feuils Suivi Feuil et Symbole ne doivent pas être renommées.

Ma macro pour renommer est la suivante, elle à pour effet de renommer TOUS les onglets :
Sub Renomme ()
'renome les onglets en Page 1, 2, 3 etc...
i = 0
For Each sh In ThisWorkbook.Sheets
i = i + 1
sh.Name = "Page " & Trim(Str(i))
Next sh
Next
End Sub

J'ai essayé de mettre :

If Sheets(sh).select <>"Suivi Feuil" or "Symbole" Then
Renomme
else
end if
end sub

Avec If Sheets(sh).Name <>"Suivi Feuil" or "Symbole" Then

et moultes fioritures sans succès.

Une âme charitable à t-elle une réponse à mon problème ?
 
Re : Renommer tous les onglets sauf certains

Salut Kimari,
Si j'assume que j'ai bien compris le problème, voici une proposition :

VB:
Option Explicit

Sub Test()
Dim Compteur As Integer, i As Integer

Application.ScreenUpdating = False
Compteur = 0
For i = 1 To Sheets.Count
    Sheets(i).Select
    If Sheets(i).Name <> "Symbole" And Sheets(i).Name <> "Suivi Feuil" Then
        Compteur = Compteur + 1
        Sheets(i).Name = "Page " & Compteur
    End If
Next i

End Sub

Cordialement,

Étienne
 
- 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
7
Affichages
165
Réponses
10
Affichages
282
Réponses
5
Affichages
234
Retour