Renommer une feuille selon la valeur d'une cellule.

Nagrom

XLDnaute Occasionnel
Bonjour,

Je souhaiterai savoir s'il est possible qu'une feuille soit renommer avec la valeur de la cellule B4, par exemple, de cette même feuille.

Merci bien pour votre aide.
 
Dernière édition:

CBernardT

XLDnaute Barbatruc
Re : Renommer une feuille selon la valeur d'une cellule.

Bonjour Nagrom et le forum,

Je te propose la macro évènementielle suivante, à placer dans le module de la feuille concernée :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B4")) Is Nothing Then
ActiveSheet.Name = Range("B4")
End If
End Sub


Cordialement

Bernard
 

Nagrom

XLDnaute Occasionnel
Re : Renommer une feuille selon la valeur d'une cellule.

Merci à vous deux!

Edit:
J'aurai encore une question:
Comment fait-on pour que lorsqu'on ouvre le classeur, la feuille A s'affiche par défaut à chaque ouverture?

Merci.
 
Dernière édition:

Gorfael

XLDnaute Barbatruc
Re : Renommer une feuille selon la valeur d'une cellule.

Nagrom à dit:
Merci à vous deux!

Edit:
J'aurai encore une question:
Comment fait-on pour que lorsqu'on ouvre le classeur, la feuille A s'affiche par défaut à chaque ouverture?

Merci.
Salut
Dans le module macros ThisWorkBook
Code:
Private Sub Workbook_Open()
    Sheets("A").Activate
End Sub
A+
 

Gorfael

XLDnaute Barbatruc
Re : Renommer une feuille selon la valeur d'une cellule.

blackjack à dit:
bonjour à tous

Et l'inverse est-il possible ?
je nomme la feuille et je retrouve le nom en B4 par exemple

Jack
Salut
Tu peux toujours le faire par macro, mais le problème est de déclencher la macro : je ne connais pas d'évènement lancé par le changement de nom de la feuille
Sinon, tu peux mettre la formule suivante en B4
Code:
=STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;50)
La formule n'est pas de moi, mais de Monique, de Brigitte ou de Samantha
A+
 

vg00

XLDnaute Nouveau
Re : Renommer une feuille selon la valeur d'une cellule.

Bonjour,
mon nom d'onglet trouverait sa source à la cellule B2 donc j'ai bien trouvé à modifier le code
ainsi
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B2")) Is Nothing Then
ActiveSheet.Name = Range("B2")
End If
End Sub

Mais ma cellule B2 n'est pas saisie manuellement mais par une formule ce qui ne fait pas varier mon nom d'onglet
A moins d'aller faire F2+entrée sur la cellule B2

Auriez-vous la solution à ce petit contretemps ?
merci d'avance
 

vg00

XLDnaute Nouveau
Re : Renommer une feuille selon la valeur d'une cellule.

Bonjour,
Merci de votre réponse si rapide.
Compte tenu des mes connaissances j'ai fait ceci et ça bloque sur la partie que j'ai mis en gras souligné
--> If Not Application.Intersect(Target, Range("B2")) Is Nothing Then
je n'ai malheureusement pas la connaissance pour solutionner ça et vous ?
Merci d'avance


Code:
Private Sub Worksheet_Calculate() 'Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B2")) Is Nothing Then
ActiveSheet.Name = Range("B2")
End If
End Sub
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Renommer une feuille selon la valeur d'une cellule.

Re,

cette procédure n'a pas d'argument, donc "target" n'est pas valide.... essaye ceci :
Code:
Private Sub Worksheet_Calculate()
On Error Resume Next 'au cas ou nom de feuille existe déjà ou invalide
Me.Name = Range("B2")
End Sub
 

vg00

XLDnaute Nouveau
Re : Renommer une feuille selon la valeur d'une cellule.

Du grand art merci...
Je suis tenté d'essayer de faire un wagon de question concernant tous mes points bloquants si vous répondez aussi bien à tout ;-)
Du coup... A bientôt j'espère...
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 239
Messages
2 086 500
Membres
103 236
dernier inscrit
Menni