VBA colorier cellules suivant la valeur d'une autre

rquantin

XLDnaute Nouveau
Bonjour,
Je recherche une solution pour pouvoir colorier des cellules suivant la valeur d'une autre; je m'explique:
Sur une feuille complete, dès que la cellule C8 (par exemple) à la valeur C1 les cellules C8, C9, C10, C11 se colore au jaune, si la valeur est C2 C8, C9, C10, C11 se colorent en rouge, ....

Le projet est un planning que je met en pièce jointe, les couleurs permettent de savoir à quel poste l'employé doit être.
J'aimerais une code VBA et non de la MEF conditionnel, car c'est sur l'ensemble de la page 30 employés).

Si quelqu'un a une idée ou une piste, merci d'avance....
 

Pièces jointes

  • planning.xls
    112 KB · Affichages: 26
  • planning.xls
    112 KB · Affichages: 30

st007

XLDnaute Barbatruc
Re : VBA colorier cellules suivant la valeur d'une autre

Dans le code de la feuille
ton fichier exemple ne reflète en rien ta question ou alors j'ai soif ....

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim c As Range
For Each c In Range("C8:C11")
c.Interior.ColorIndex = xlNone
If c.Value = [C1].Value Then
With c
.Interior.ColorIndex = 6
End With
End If
Next c
If c.Value = [C2].Value Then
With c
.Interior.ColorIndex = 3
End With
End If
Next c
End Sub
 

rquantin

XLDnaute Nouveau
Re : VBA colorier cellules suivant la valeur d'une autre

Bonjour st007,

En fait dans l'onglet SEM 6, dans la cellule B6, si je met le code horaire C1, je veux que les cellules B6, B7, B8 et B9 soit en jaune, si c'est C3 en rose, .... en gros selon le code de la cellule 0, il faut que les cellules 0, 1, 2, 3 soit de la couleur correspondant au code horaire.

Ais-je été un peu plus clair ?

Merci d'avance
 

st007

XLDnaute Barbatruc
Re : VBA colorier cellules suivant la valeur d'une autre

Comme ceci peut-être
même si la plage à colorer me semble bizarre.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
If Not Intersect(Target, Range("B6")) Is Nothing Then
    For Each c In Sheets("liste").Range("ho")
        If Target.Value = c.Value Then
            Range("B6:B9").Interior.Color = c.Interior.Color
        End If
    Next c
End If
End Sub
 

Pièces jointes

  • planning.xls
    89 KB · Affichages: 32
  • planning.xls
    89 KB · Affichages: 31

rquantin

XLDnaute Nouveau
Re : VBA colorier cellules suivant la valeur d'une autre

Super merci sa fonctionne.

Je remet le fichier joint modifié.

Y-a-t-il une solution pour pouvoir réaliser ce code sur toutes les lignes employés (30 au total que je n'ai pas encore mis dans le fichier joint), ou il est obligatoire de mettre le code pour chaque ligne pour le matin et le soir ?

Merci !
 

Pièces jointes

  • GRP.xls
    178.5 KB · Affichages: 29
  • GRP.xls
    178.5 KB · Affichages: 24

Discussions similaires

Statistiques des forums

Discussions
312 180
Messages
2 085 995
Membres
103 082
dernier inscrit
adri77