dans un tableau incerer 1 couleur dans 1 cellule selon la répons e

Le
couleur ds une cellule selon la réponse
comment incerer une couleur dans une cellule par rapport à la réponse donné
exemple si on met sa taille et son poids sa nous donne l'imc la couleur nous
donne la tranche imc
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Essart
Le #20115461
Bonjour,

2 réponses possibles à la question:
- sans VBA, pas les mises en forme conditionnelles (Outils/MEFC ou, sous
2007, Accueil/ Mise en forme conditionnelle )
et "la valeur de la cellule est comprise entre ..." et cliquer sur format
pour personnaliser ...
Le nombre de MEFC est limité à 3 en plus du format initial sous 2000 et
2003, contrairement à 2007.

- Pour plus de 3 sous 2000 ou 2003, il faut le faire sous VBA :
dans le VBA de la feuille :
-> Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("C2:C50"))Is Nothing And Target.Count = 1
Then ' pour un plage C2 à C50

ou si plage nommée : If Not Intersect(Target, Range("MaPlage")) Is Nothing
And Target.Count = 1 And Not temoin Then

et :
If Target.value < 0.18 then Target.Interior.ColorIndex = 37 ' pour du
bleu en fond de cellule
ElseIf Target.value < 0.2 then Target.Interior.ColorIndex = 40 ' pour
du brun
...
End If
End If
End Sub

à tester !

Essart


"couleur ds une cellule selon la réponse" <couleur ds une cellule selon la
ré a écrit dans le message de news:

comment incerer une couleur dans une cellule par rapport à la réponse
donné
exemple si on met sa taille et son poids sa nous donne l'imc la couleur
nous
donne la tranche imc


Essart
Le #20115441
avec une petite erreur sur la ligne pour la plage nommée

erreur corrigée dans ce qui suit :
-> Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("C2:C50"))Is Nothing And _
Target.Count = 1 Then ' pour un plage C2 à C50

ou si plage nommée :
If Not Intersect(Target, Range("MaPlage")) Is Nothing _
And Target.Count = 1 Then

et :
If Target.value < 0.18 then Target.Interior.ColorIndex = 37 ' pour du
bleu en fond de cellule
ElseIf Target.value < 0.2 then Target.Interior.ColorIndex = 40 ' pour
du brun
...
End If
End If
End Sub
LSteph
Le #20117001
Bonjour,

Lorsqu'il y a pas mal de conditions un select case est souvent plus
commode que plein d'if
Supposons les entrées d'IMC en B2:B10 et qui pourraient se faire
manuellement ou par copier coller (une ou plusieurs))


Private Sub Worksheet_Change(ByVal Target As Range)
Dim iSect As Range, c As Range
Set iSect = Intersect(Target, [b2:b10])
If iSect Is Nothing Then Exit Sub
For Each c In [b2:b10]
If IsEmpty(c) Then
c.Interior.ColorIndex = 0
Else
Select Case c
Case Is < 18
c.Interior.ColorIndex = 41
Case Is < 25
c.Interior.ColorIndex = 42
Case Is < 30
c.Interior.ColorIndex = 43
Case Is < 40
c.Interior.ColorIndex = 44
Case Else
c.Interior.ColorIndex = 3
End Select
End If
Next
End Sub

'lSteph

On 11 sep, 07:49, couleur ds une cellule selon la réponse <couleur ds
une cellule selon la ré wrote:
comment incerer une couleur dans une cellule par rapport à la réponse donné
exemple si on met sa taille et son poids sa nous donne l'imc la couleur n ous
donne la tranche imc


LSteph
Le #20117161
Bonjour,

...et plutôt si un calcul en C2:C10 est obtenu selon Entrée des Poids
et Taille en A2:B10
par la formule type: =SI(B2="";"";A2/(B2)^2)


Private Sub Worksheet_Calculate()
For Each c In [c2:c10]
If c = "" Then
c.Interior.ColorIndex = 0
Else
Select Case c
Case Is < 18
c.Interior.ColorIndex = 41
Case Is < 25
c.Interior.ColorIndex = 42
Case Is < 30
c.Interior.ColorIndex = 43
Case Is < 40
c.Interior.ColorIndex = 44
Case Else
c.Interior.ColorIndex = 3
End Select
End If
Next
End Sub

'lSteph

On 11 sep, 07:49, couleur ds une cellule selon la réponse <couleur ds
une cellule selon la ré wrote:
comment incerer une couleur dans une cellule par rapport à la réponse donné
exemple si on met sa taille et son poids sa nous donne l'imc la couleur n ous
donne la tranche imc


Publicité
Poster une réponse
Anonyme