Mise en forme conditionnelle de cellules via macro

kaizenn Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
Patty5083 Messages postés 34 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Novice en utilisation de macros dans excel, je cherche à mettre une couleur de fond dans une colonne, à partir d'une cellule fixe et ce jusqu'à ce qu'il y ai déjà une couleur et plus de valeur.

Détails: ma colonne C contient un nombre variable de codes articles à partir de la ligne 18, sans couleur de fond, puis de ne contient plus de valeurs mais une couleur de fond.
Je souhaite mettre une couleur de fond différente sur toute la colonne C, à partir de la cellule C18 et ce, jusqu'à ce qu'il y ai déjà une couleur de fond, puis plus.
Autre possibilité, mettre une couleur de fond dans la colonne C, à partir de la cellule C18 et tant qu'il y a des valeurs dans la colonne.

Dans l'exemple ci-dessous, la macro devra mettre une couleur de fond de la cellule C18 à C30.
https://www.cjoint.com/c/EAxqcG4AFKR

Merci pour votre aide.
A voir également:

3 réponses

Patty5083 Messages postés 34 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour
Si tu n'as toujours pas trouvé, essaie cela

Sub ColorCol()
'Récupération dernière ligne tableau
LigDer = Range("C" & Rows.Count).End(xlUp).Row
'Faire - 2 car les 2 dernières lignes ne sont pas concernées par la couleur
For i = 18 To LigDer - 2
Range("C" & i).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorLight2
.TintAndShade = 0.799981688894314
.PatternTintAndShade = 0
End With
Next
End Sub


Bon courage
0
kaizenn
 
C'est pas mal du tout ! Merci Patty.

Mais comme je suis vraiment débutant, peux-tu me dire comment rajouter la colonne D dans la selection et comment modifier la couleur et en selectionner une autre ?
Merci.
0
Patty5083 Messages postés 34 Date d'inscription   Statut Membre Dernière intervention  
 
Bonsoir
Pour avoir la colonne D en plus :

Sub ColorCol()
'Récupération dernière ligne tableau
LigDer = Range("C" & Rows.Count).End(xlUp).Row
'Faire - 2 car les 2 dernières lignes ne sont pas concernées par la couleur
For i = 18 To LigDer - 2
Range("C" & i & ":D" & i).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent3
.TintAndShade = 0.799981688894314
.PatternTintAndShade = 0
End With
Next
End Sub


Quant à la couleur, je l'obtiens en enregistrant une macro et en choisissant la couleur souhaitée puis j'arrête mon enregistrement de macro et je reprend le code couleur
Pour enregistre une macro, tu sélectionne le menu "Affichage" puis macro...enregistrer

Bonne soirée
0