Changement de couleur de cellule avec un if
Louis
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour tout le monde,
Je voudrais que mes cases se colorient avec un if
je voudrais que si la valeur des objectifs réalisés est supérieur à l'objectif du mois la cellule soit verte, si l'objectif réalisé est entre celui du mois et celui du mois précédent que la cellule soit orange et enfin que si il est inférieur a celui du mois précédent qu'il se colorie en rouge.
J'ai donc réaliser le code suivant mais lorsque je l'execute toute les cellules se colorient en vert :
'Déclaration des variables
Dim i As Integer
Dim objectif As Double
Dim realise As Double
Dim objectif_mensuel As Double
Dim objectif_du_mois As Double
Dim objectif_mois_precedent As Double
Dim mois As Integer
'Récupération du mois au moment du clic
mois = Month(Date)
'création de la boucle pour les causeries
For i = 5 To 34
'Récupération des valeurs dans les cellules
objectif = Cells(i, 3).Value
realise = Cells(i, 4).Value
If objectif = 0 Then
'On ne fait rien pour éviter la division par 0
'On lui donne la valeur 0 pour faire jolie
Cells(i, 18).Value = 0
Cells(i, 19).Value = 0
Cells(i, 5).Interior.ColorIndex = 15
Else
'Calcul des valeurs
objectif_mensuel = objectif / 12
objectif_du_mois = objectif_mensuel * mois
objectif_mois_precedent = objectif_mensuel * (mois - 1)
'Affichage des résultats
Cells(i, 17).Value = objectif_mensuel
Cells(i, 18).Value = objectif_du_mois
Cells(i, 19).Value = objectif_mois_precedent
'Changement de la couleur de la case en fonction de l'objectif
If realise >= obectif_du_mois Then
Cells(i, 5).Interior.ColorIndex = 43
ElseIf objectif_du_mois > realise > objectif_mois_precedent Then
Cells(i, 5).Interior.ColorIndex = 44
Else
Cells(i, 5).Interior.ColorIndex = 3
End If
End If
Next
Je vous remercie par avance de votre aide.
Je voudrais que mes cases se colorient avec un if
je voudrais que si la valeur des objectifs réalisés est supérieur à l'objectif du mois la cellule soit verte, si l'objectif réalisé est entre celui du mois et celui du mois précédent que la cellule soit orange et enfin que si il est inférieur a celui du mois précédent qu'il se colorie en rouge.
J'ai donc réaliser le code suivant mais lorsque je l'execute toute les cellules se colorient en vert :
'Déclaration des variables
Dim i As Integer
Dim objectif As Double
Dim realise As Double
Dim objectif_mensuel As Double
Dim objectif_du_mois As Double
Dim objectif_mois_precedent As Double
Dim mois As Integer
'Récupération du mois au moment du clic
mois = Month(Date)
'création de la boucle pour les causeries
For i = 5 To 34
'Récupération des valeurs dans les cellules
objectif = Cells(i, 3).Value
realise = Cells(i, 4).Value
If objectif = 0 Then
'On ne fait rien pour éviter la division par 0
'On lui donne la valeur 0 pour faire jolie
Cells(i, 18).Value = 0
Cells(i, 19).Value = 0
Cells(i, 5).Interior.ColorIndex = 15
Else
'Calcul des valeurs
objectif_mensuel = objectif / 12
objectif_du_mois = objectif_mensuel * mois
objectif_mois_precedent = objectif_mensuel * (mois - 1)
'Affichage des résultats
Cells(i, 17).Value = objectif_mensuel
Cells(i, 18).Value = objectif_du_mois
Cells(i, 19).Value = objectif_mois_precedent
'Changement de la couleur de la case en fonction de l'objectif
If realise >= obectif_du_mois Then
Cells(i, 5).Interior.ColorIndex = 43
ElseIf objectif_du_mois > realise > objectif_mois_precedent Then
Cells(i, 5).Interior.ColorIndex = 44
Else
Cells(i, 5).Interior.ColorIndex = 3
End If
End If
Next
Je vous remercie par avance de votre aide.
A voir également:
- Changement de couleur de cellule avec un if
- Excel cellule couleur si condition texte - Guide
- Changer de dns - Guide
- Excel compter cellule couleur sans vba - Guide
- Changer la couleur de la barre des taches - Guide
- Changement de police - Guide
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
peux-tu utiliser les balises de code quand tu partages du code? https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Je pense que la ligne suivante ne fait pas ce que tu imagines
Il est préférable d'écrire:
peux-tu utiliser les balises de code quand tu partages du code? https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Je pense que la ligne suivante ne fait pas ce que tu imagines
ElseIf objectif_du_mois > realise > objectif_mois_precedent Then
Il est préférable d'écrire:
ElseIf objectif_du_mois > realise and realise > objectif_mois_precedent Then
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
1 584
ou même, étant donné que la première condition est certaine, vu le test précédent:
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
as-tu bien
option expliciten première ligne du module? sinon, ajoute-le.