renommer un onglet automatiquement

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

enki

XLDnaute Nouveau
Bonjour,

je souhaite renommer mes onglets, lorsque je change dans la feuille la cellule A1 (qui une date), je voudrais voir apparetre le mois dans le nom de l'onglet.
je voudrais que cette macro marche sur chaque onglet.
merci
 
Re : renommer un onglet automatiquement

Bonsoir enki,

Si vous y tenez, macro à placer dans ThisWorkbook :

Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Source As Range)
On Error Resume Next
If Source.Address = "$A$1" Then Sh.Name = Application.Proper(Format(Source, "mmmm"))
End Sub

A+
 
Re : renommer un onglet automatiquement

Re,

Si le nom du mois a déjà été donné à une autre feuille, ou si A1 n'est pas une date, la macro suivante annule l'entrée :

Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Source As Range)
If Source.Address <> "$A$1" Then Exit Sub
On Error Resume Next
Sh.Name = Application.Proper(Format(Source, "mmmm"))
[COLOR="Red"]If Source <> "" And (Err Or Not IsDate(Source)) Then Application.Undo[/COLOR]
End Sub

A+
 
Dernière édition:
Re : renommer un onglet automatiquement

Re,

Attention, j'ai modifié la dernière macro a 22h02...

Mais si rien ne se passe, c'est que les macros ne sont pas activées.

Si vous n'êtes pas sur Excel 2007, menu Outils-Macro-Sécurité et choisissez le niveau faible ou moyen.

Puis fermez et rouvrez le fichier. Avec le niveau moyen, un message demandera si vous voulez activer les macros.

Si vous êtes sur Excel 2007, dites-le, la procédure est un peu différente.

A+
 
Re : renommer un onglet automatiquement

Re,

J'ai supprimé à 22h27 les 2 Application.EnableEvents qui étaient en fait inutiles.

Sous Excel 2000, cette macro doit marcher sans problème. Entrez une date en A1 et voyez l'onglet.

A+
 
Re : renommer un onglet automatiquement

Re,

Il aurait été mieux de le dire dès le départ, je ne me serais pas cassé la tête.

Toujours dans ThisWorkbook, une macro qui se déclanche quand les formules des feuilles sont recalculées :

Code:
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
On Error Resume Next
Sh.Name = Application.Proper(Format(Sh.Range("A1"), "mmmm"))
End Sub

Maintenant si les valeurs entrées dans la feuille Récap Annuel de l'autre classeur ne sont pas bonnes, à vous de voir.

A+
 
Dernière édition:
Re : renommer un onglet automatiquement

Re,

Il vaut mieux remettre de nouveau ici les Application.EnableEvents :

Code:
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Application.EnableEvents = False
On Error Resume Next
Sh.Name = Application.Proper(Format(Sh.Range("A1"), "mmmm"))
Application.EnableEvents = True
End Sub

A+
 
Re : renommer un onglet automatiquement

Re,

Pas de problème enki :

Code:
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Application.EnableEvents = False
On Error Resume Next
Sh.Name = Application.Proper(Format(Sh.Range("A1"), "[COLOR="Red"]mmmm yy[/COLOR]"))
Application.EnableEvents = True
End Sub

Bonne nuit.
 
- 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
4
Affichages
149
  • Question Question
Microsoft 365 tableau d'alerte
Réponses
2
Affichages
108
Réponses
5
Affichages
262
Réponses
3
Affichages
117
Réponses
4
Affichages
119
Réponses
10
Affichages
359
Retour