Vba colorer cellules

mariiiie -  
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
je voudrais colorer mes cellules en fonction d'une condition voila le code que j'ai utilisé:

If Not IsEmpty(Sheets("donnees").Range("N5")) And Sheets("donnees").[N5] < 65 Then Sheets("donnees").Range("N5").Interior.ColorIndex = 3

mais cela me colore les cellules malgré que les données soient supérieures à 65
help

1 réponse

eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonjour,

Il faudrait peut-être ajouter le traitement à faire si la condition n'est pas respectée que la cellule reprenne sa couleur d'origine.

Et plus simplement tu peux utiliser un format conditionnel...

eric
0
mariiiie
 
Oki mais je sais pas comment faire je débute et j'ai deja bien galeré pour écrire cette formule
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
If tests Then   
     'traitement si test positif  
else  
    'traitement si test négatif  
endif


ce qui donne dans ton cas :
Private Sub Worksheet_Change(ByVal Target As Range) 
    If Not IsEmpty(Range("N5")) And [N5] < 65 Then 
        Range("N5").Interior.ColorIndex = 3 
    Else 
        Range("N5").Interior.ColorIndex = xlNone 
    End If 
End Sub


Mais si tu ne connais pas les formats conditionnels penche toi dessus...
menu 'format / mise en forme conditionnelle...' sur excel 2003

eric
0
mariiiie
 
Si j'ai bien compris
If tests then Sheets("donnees").Range("N5")) And Sheets("donnees").[N5] < 65
else
Sheets("donnees").Range("N5")) And Sheets("donnees").[N5] > 65
endif

est ce que je me trompe?
0
mariiiie
 
J'ai essaye la mise en forme conventionnelle c'est vrai que c'est plus simple!!
Mais je dois le faire avec vba quand je rentre la formule cela me met un message d'alerte
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
relis le message de 18h52
0