Vba colorer cellules

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

  1. Contributeur
    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
    1. Oki mais je sais pas comment faire je débute et j'ai deja bien galeré pour écrire cette formule
    2. Contributeur
      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
    3. 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?
    4. 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
    5. Contributeur
      relis le message de 18h52