Je reviens vers vous cette fois pour le problème en objet.
Avant de vous solliciter j'ai essayé d'appliquer le code suivant que j'ai trouvé sur Internet mais évidemment il doit y avoir une erreur de ma part car cela ne fonctionne pas.
Je veux que l'onglet d'une feuille devienne vert si la cellule N2 de cette feuille = vrai (j'ai mis une formule conditionnelle dans cette cellule), sinon il reste gris.
Pour le moment je n'ai pas modifié le code ci-dessous pour la couleur rouge ou bleue car je voulais voir déjà si ça fonctionne
J'ai fait un clic droit sur l'onglet en question
Visualiser le code
Sur la feuille j'ai choisi en haut
(Je ne peux pas mettre "change" comme sur l'exemple trouvé sur Internet)
j'ai collé :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby Extendoffice
If Target.Address = "$N$2" Then
Select Case Target.Value
Case "FAUX"
Me.Tab.Color = vbRed
Case "VRAI"
Me.Tab.Color = vbGreen
Case Else
Me.Tab.Color = vbBlue
End Select
End If
End Sub
Puisqu'il y a une formule en N2 le mieux est d'utiliser l'évènement Calculate.
Ou dans ThisWorkbook avec l'évènement SheetCalculate :
VB:
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
If CStr(Sh.[N2]) = CStr(True) Then Sh.Tab.Color = vbGreen Else Sh.Tab.ColorIndex = xlNone
End Sub
Merci et merci encore , j'ai tâtonné mais j'ai réussi.
Encore merci pour votre réactivité et votre patience.
Je ne saurais dire combien votre aidre m'est précieuse
A bientôt