Vba couleur cellule
panda567
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Dans une feuille excel, j'ai une colonne nommée "evaluation " qui est la colonne H. Dans cette colonne j'ai les évaluations des différents disons reporter sur chaque ligne. Cette évaluation est sur et j'aimerais colorier le fonds de la cellule uniquement ( pas la colonne entière ) selon la nnote contenue dans la cellule. J'ai réussi les conditions sans problèmes mais je n'arrive pas à
1) Faire que cette macros traite uniquement ma colonne H ou 8
2) Selectionner les valeurs des cellules de toute la colonne pour ne pas devoir faire un code uniquement avec des conditions pour chaque ligne.
Voici mon code :
Qqu pourrait il m'aider svp ? :)
Merci d'avance et bonne fête !
Dans une feuille excel, j'ai une colonne nommée "evaluation " qui est la colonne H. Dans cette colonne j'ai les évaluations des différents disons reporter sur chaque ligne. Cette évaluation est sur et j'aimerais colorier le fonds de la cellule uniquement ( pas la colonne entière ) selon la nnote contenue dans la cellule. J'ai réussi les conditions sans problèmes mais je n'arrive pas à
1) Faire que cette macros traite uniquement ma colonne H ou 8
2) Selectionner les valeurs des cellules de toute la colonne pour ne pas devoir faire un code uniquement avec des conditions pour chaque ligne.
Voici mon code :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Color cell according to evaluation 'Target column 8 or H, column of evaluation and put the condition If Target.Column = 8 Then Valeur = Range.value If Valeur < 5 Then 'If the evaluation is under 5 then the color of the cell will be black Range.Interior.ColorIndex = 30 ElseIf Valeur = 5 Or Valeur = 6 Then 'If the evaluation is 5 or 6 then the color of the cell will be cyan Range.Interior.ColorIndex = 46 ElseIf Valeur = 10 Then 'If the evaluation is 10 then the color of the cell will be blue Range.Interior.ColorIndex = 3 ElseIf Valeur = 0 Or Valeur = 1 Then ' 'If the evaluation is 0 or 1 then the color of the cell will be red Range.Interior.ColorIndex = 3 Else 'In other case, the cell will be white Range.Interior.ColorIndex = 2 End If End If End Sub
Qqu pourrait il m'aider svp ? :)
Merci d'avance et bonne fête !
A voir également:
- Vba couleur cellule
- Excel cellule couleur si condition texte - Guide
- Excel compter cellule couleur sans vba - Guide
- Boite a couleur - Télécharger - Divers Photo & Graphisme
- Proteger cellule excel - Guide
- Un mot est caché dans l’en-tête du document. pour le trouver, modifiez sa couleur. ✓ - Forum Word
2 réponses
Bonjour,
Essaie cela
Essaie cela
Option Explicit Dim Valeur As Variant Private Sub Worksheet_SelectionChange(ByVal Target As Range) For_X_to_Next_Ligne End Sub Sub For_X_to_Next_Ligne() Dim FL1 As Worksheet, Cell As Range, NoCol As Integer Dim NoLig As Long Dim DernLigne As Long DernLigne = Range("A1048576").End(xlUp).Row 'Instance de la feuille qui permet d'utiliser FL1 partout dans 'le code à la place du nom de la feuille Set FL1 = Worksheets("Feuil1") 'Fixe le N° de la colonne à lire NoCol = 8 'Utilisation du N° de ligne dans une boucle For ... Next For NoLig = 1 To DernLigne Valeur = FL1.Cells(NoLig, NoCol) With FL1.Range("H" & NoLig) If Valeur < 5 Then 'If the evaluation is under 5 then the color of the cell will be black .Interior.ColorIndex = 30 ElseIf Valeur = 5 Or Valeur = 6 Then 'If the evaluation is 5 or 6 then the color of the cell will be cyan .Interior.ColorIndex = 46 ElseIf Valeur = 10 Then 'If the evaluation is 10 then the color of the cell will be blue .Interior.ColorIndex = 3 ElseIf Valeur = 0 Or Valeur = 1 Then ' 'If the evaluation is 0 or 1 then the color of the cell will be red .Interior.ColorIndex = 3 Else 'In other case, the cell will be white .Interior.ColorIndex = 2 End If End With Next Set FL1 = Nothing End Sub