Renommer et trier les onglets avant la fermeture du classeur

recovery

XLDnaute Junior
Bonjour,
Je me retourne vers les utilisateurs plus expérimentés que moi, afin d’optimiser mon code VBA ce dernier fonctionne bien néanmoins il est limité. Je m’explique avant de refermer le classeur je renomme l’onglet de ma nouvelle feuille et trie l’ensemble des onglets à l’aide du code ci – dessous aucun problème dès la réouverture du classeur l’onglet est bien renommé sauf que si plusieurs feuilles sont crées, seule la première crée sera renommée les autres non.
Y a t – il y code qui permettrait soit de renommer l’ensemble des onglets nouvellement créés avant la fermeture du classeur ou de renommer l’onglet dès lors que les cellules indiquées dans le code seraient renseignées ?

Si vous disposez d’un peu de temps de manière à améliorer mon code, je vous en remercie

Bien cordialement

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveSheet.Name = Range("I10") & " " & Range("F7") & " " & Range("k7")
Dim FlagClassement As Boolean
Dim Compteur As Integer
FlagClassement = True
Do While FlagClassement = True
FlagClassement = False
For Compteur = 1 To Worksheets.Count - 1
If Worksheets(Compteur).Name > Worksheets(Compteur + 1).Name Then
Worksheets(Compteur).Move after:=Worksheets(Compteur + 1)
FlagClassement = True
End If
Next Compteur
Loop
End Sub
 

MJ13

XLDnaute Barbatruc
Re : Renommer et trier les onglets avant la fermeture du classeur

Bonjour Recovery

Il faudrait boucler sur toutes les feuilles et vérifier que le nom de la feuille corresponde bien aux cellules que tu désires.

Une petite boucle dans le genre et à la place du msgbox, tu vas vérifier le nom, ensuite, tu pourras trier:

Code:
Sub ListeFeuilles()
For i = 1 To Workbooks(ThisWorkbook.Name).Sheets.Count
MsgBox Sheets(i).Name
Next
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
311 723
Messages
2 081 934
Membres
101 844
dernier inscrit
pktla