Mise en forme conditionnelle de cellules via macro

Fermé
kaizenn Messages postés 1 Date d'inscription vendredi 23 janvier 2015 Statut Membre Dernière intervention 23 janvier 2015 - 23 janv. 2015 à 15:54
Patty5083 Messages postés 34 Date d'inscription lundi 14 avril 2014 Statut Membre Dernière intervention 10 novembre 2019 - 30 janv. 2015 à 18:02
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.

3 réponses

Patty5083 Messages postés 34 Date d'inscription lundi 14 avril 2014 Statut Membre Dernière intervention 10 novembre 2019
30 janv. 2015 à 09:59
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
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 lundi 14 avril 2014 Statut Membre Dernière intervention 10 novembre 2019
30 janv. 2015 à 18:02
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