XL 2010 Modifiez la couleur d'un onglet de feuille en fonction de la valeur d'une cellule

rosabelle

XLDnaute Junior
Bonjour,

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
    1645191151746.png

(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

Merci par avance pour votre aide
 

job75

XLDnaute Barbatruc
Bonjour rosabelle, BernardçXLD,

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
A+
 

Pièces jointes

  • Coumeur onglet(1).xlsm
    17.4 KB · Affichages: 4

Discussions similaires