Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 40291415-9874-4E23-B81C-51408B199A3E@microsoft.com...
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 40291415-9874-4E23-B81C-51408B199A3E@microsoft.com...
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 40291415-9874-4E23-B81C-51408B199A3E@microsoft.com...
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" a écrit dans le message de news:
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 5323EBF6-9646-4AF1-87FE-8A7C710BD9E7@microsoft.com...
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 40291415-9874-4E23-B81C-51408B199A3E@microsoft.com...
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" a écrit dans le message de news:
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" a écrit dans le message de news:
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 5323EBF6-9646-4AF1-87FE-8A7C710BD9E7@microsoft.com...
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 40291415-9874-4E23-B81C-51408B199A3E@microsoft.com...
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" a écrit dans le message de news:
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Et ta fonction (celle qui met à jour B1) est déclenchée de quelle façon ?
Salutations!
"Vader" a écrit dans le message de news:
beh à vrai dire ... B1 est modifiée par une fonction.
Et comme je ne veux pas que l'utilisateur final puisse la modifiée, l'onglet
doit pouvoir detecter son changement tout seul pour se mettre à jour.
Nota : C'est pour cela que j'ai contourné le prb en demandant au code de
modifié le nom de l'onglet dès la modif de A1 ... seulement la valeur à aller
chercher est bien en B1 ...
Petit prb, si B1 est modifiée plusieurs fois et que A1 ne change pas ... je
suis planté ! C'est pour cela que je ne veux faire intervenir le test que sur
B1 et pas une autre cellule.
"michdenis" wrote:Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" a écrit dans le message de news:
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Et ta fonction (celle qui met à jour B1) est déclenchée de quelle façon ?
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 48AACAC8-7524-488B-ACB7-6CB681333EDE@microsoft.com...
beh à vrai dire ... B1 est modifiée par une fonction.
Et comme je ne veux pas que l'utilisateur final puisse la modifiée, l'onglet
doit pouvoir detecter son changement tout seul pour se mettre à jour.
Nota : C'est pour cela que j'ai contourné le prb en demandant au code de
modifié le nom de l'onglet dès la modif de A1 ... seulement la valeur à aller
chercher est bien en B1 ...
Petit prb, si B1 est modifiée plusieurs fois et que A1 ne change pas ... je
suis planté ! C'est pour cela que je ne veux faire intervenir le test que sur
B1 et pas une autre cellule.
"michdenis" wrote:
Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 5323EBF6-9646-4AF1-87FE-8A7C710BD9E7@microsoft.com...
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 40291415-9874-4E23-B81C-51408B199A3E@microsoft.com...
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Et ta fonction (celle qui met à jour B1) est déclenchée de quelle façon ?
Salutations!
"Vader" a écrit dans le message de news:
beh à vrai dire ... B1 est modifiée par une fonction.
Et comme je ne veux pas que l'utilisateur final puisse la modifiée, l'onglet
doit pouvoir detecter son changement tout seul pour se mettre à jour.
Nota : C'est pour cela que j'ai contourné le prb en demandant au code de
modifié le nom de l'onglet dès la modif de A1 ... seulement la valeur à aller
chercher est bien en B1 ...
Petit prb, si B1 est modifiée plusieurs fois et que A1 ne change pas ... je
suis planté ! C'est pour cela que je ne veux faire intervenir le test que sur
B1 et pas une autre cellule.
"michdenis" wrote:Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" a écrit dans le message de news:
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Et ta fonction (celle qui met à jour B1) est déclenchée de quelle façon ?
Salutations!
"Vader" a écrit dans le message de news:
beh à vrai dire ... B1 est modifiée par une fonction.
Et comme je ne veux pas que l'utilisateur final puisse la modifiée, l'onglet
doit pouvoir detecter son changement tout seul pour se mettre à jour.
Nota : C'est pour cela que j'ai contourné le prb en demandant au code de
modifié le nom de l'onglet dès la modif de A1 ... seulement la valeur à aller
chercher est bien en B1 ...
Petit prb, si B1 est modifiée plusieurs fois et que A1 ne change pas ... je
suis planté ! C'est pour cela que je ne veux faire intervenir le test que sur
B1 et pas une autre cellule.
"michdenis" wrote:Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" a écrit dans le message de news:
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Et ta fonction (celle qui met à jour B1) est déclenchée de quelle façon ?
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 48AACAC8-7524-488B-ACB7-6CB681333EDE@microsoft.com...
beh à vrai dire ... B1 est modifiée par une fonction.
Et comme je ne veux pas que l'utilisateur final puisse la modifiée, l'onglet
doit pouvoir detecter son changement tout seul pour se mettre à jour.
Nota : C'est pour cela que j'ai contourné le prb en demandant au code de
modifié le nom de l'onglet dès la modif de A1 ... seulement la valeur à aller
chercher est bien en B1 ...
Petit prb, si B1 est modifiée plusieurs fois et que A1 ne change pas ... je
suis planté ! C'est pour cela que je ne veux faire intervenir le test que sur
B1 et pas une autre cellule.
"michdenis" wrote:
Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 5323EBF6-9646-4AF1-87FE-8A7C710BD9E7@microsoft.com...
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:
Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news:
40291415-9874-4E23-B81C-51408B199A3E@microsoft.com...
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub
Et ta fonction (celle qui met à jour B1) est déclenchée de quelle façon ?
Salutations!
"Vader" a écrit dans le message de news:
beh à vrai dire ... B1 est modifiée par une fonction.
Et comme je ne veux pas que l'utilisateur final puisse la modifiée, l'onglet
doit pouvoir detecter son changement tout seul pour se mettre à jour.
Nota : C'est pour cela que j'ai contourné le prb en demandant au code de
modifié le nom de l'onglet dès la modif de A1 ... seulement la valeur à aller
chercher est bien en B1 ...
Petit prb, si B1 est modifiée plusieurs fois et que A1 ne change pas ... je
suis planté ! C'est pour cela que je ne veux faire intervenir le test que sur
B1 et pas une autre cellule.
"michdenis" wrote:Si tu modifies la valeur en B1, le nom de l'onglet de cette feuille devrait changer.
Comment modifies-tu la valeur que contient la cellule B1 ?
Salutations!
"Vader" a écrit dans le message de news:
Je viens de tester, mais je reste au même point : je dois aller valider la
cellule pour que l'onglet change de nom.
J'ai l'impression que le code ne fais que tester la validité du nom ...
Je cherche un code qui detecte le changement de valeur d'une cellule.
Dans le genre : on stock dans une variable la valeur de la cellule B1 à
l'ouverture de la feuille et à chaque changement, le code lance une mise à
jour de la valeur de l'onglet.
A savoir si un tel test est possible ... là.
"michdenis" wrote:Bonjour Vader,
Dans le code module de ta feuille où B1 est modifié, copie le code suivant :
'-------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Variant
S = Array("[", "*", "?", ":", "/", "", "]")
If Range("B1").Address = Target.Address Then
If Range("B1") <> "" Then
For Each arr In S
If InStr(1, Range("B1"), arr, vbTextCompare) <> 0 Then
MsgBox "impossible de renommer feuille : " & _
"à cause de ce caractère : " & arr & _
" présent en " & Range("B1").Address(0, 0)
Exit Sub
End If
Next
Me.Name = Range("B1")
End If
End If
End Sub
'-------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
J'ai un problème avec le titre de mes onglets : en fait j'utilise le code
suivant pour afficher en auto le nom de l'onglet (cf ci-dessous).
Cependant est-il possible de faire évoluer le texte de l'onglet dès que la
cellule est modifiée (de façon automatique) ?
Pour l'instant pour que l'onglet prenne la valeur de B641 je dois aller
revalider la cellule (F2 + Entrer). Nota : B641 évolue toute seule, par
formule.
Private Sub Worksheet_Change(ByVal Target As Range)
'Nommer la cellule qui donne la valeur à l'onglet
With Me.Range("B1")
If Not (Intersect(.Cells, Target) Is Nothing) Then
Sheet31.Name = .Value
'Attention : si la cellule qui donne la valeur à l'onglet est vide la
ligne ci-dessus renvera une erreur.
End If
End With
End Sub