Excel macro mise en forme conditionnelle
Résolu
evevdll
Messages postés
81
Date d'inscription
Statut
Membre
Dernière intervention
-
-
-
Bonjour,
Toujours débutante en programmation (j'avance à taton mais j'avance quand même), j'aimerai pouvoir appliquer une mise en forme conditionnelle à l'aide d'une macro.
Les mises en formes conditionnelles n'en propose que 3 jusqu'à la version 2003 et c'est bien mieux depuis la version 2007 mais je dois travailler dans les deux versions et j'ai déjà des mises en formes créées dans mon classeur.
Donc, j'aimerai pouvoir appliquer un format police (une couleur) dès que :
si colonne F = "Vente" et colonne O = "" (vide) ==> je veux couleur bleue pour la ligne entière (ou les données de la ligne)
si colonne F = "Vente" et colonne O = variable (un numéro de facture : V071011) ==> je veux couleur orange pour la ligne entière (ou les données de la ligne)
sinon couleur automatique donc pas de changement.
Je pense que je peux appliquer le même type de condition pour 3 cellules différentes à comparer.
Je remercie tous ceux et celles qui pourront m'aider.
a+
Eve
Toujours débutante en programmation (j'avance à taton mais j'avance quand même), j'aimerai pouvoir appliquer une mise en forme conditionnelle à l'aide d'une macro.
Les mises en formes conditionnelles n'en propose que 3 jusqu'à la version 2003 et c'est bien mieux depuis la version 2007 mais je dois travailler dans les deux versions et j'ai déjà des mises en formes créées dans mon classeur.
Donc, j'aimerai pouvoir appliquer un format police (une couleur) dès que :
si colonne F = "Vente" et colonne O = "" (vide) ==> je veux couleur bleue pour la ligne entière (ou les données de la ligne)
si colonne F = "Vente" et colonne O = variable (un numéro de facture : V071011) ==> je veux couleur orange pour la ligne entière (ou les données de la ligne)
sinon couleur automatique donc pas de changement.
Je pense que je peux appliquer le même type de condition pour 3 cellules différentes à comparer.
Je remercie tous ceux et celles qui pourront m'aider.
a+
Eve
A voir également:
- Mise en forme conditionnelle vba
- Mise en forme conditionnelle excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Mise en forme tableau croisé dynamique - Guide
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
6 réponses
Bonjour,
Voici une macro
Sub formatConditionnelle()
Application.ScreenUpdating = False
For Each c In [f1:f25] 'plage a testée
c.Select
Dim l As Long
l = ActiveCell.[Row]
If ActiveCell.Value = "Vente" And ActiveCell.Offset(0, 9) <> "" Then
Rows("" & l & ":" & l & "").Select
Selection.Font.ColorIndex = 45
Else
If ActiveCell.Value = "Vente" And ActiveCell.Offset(0, 9) = "" Then
Rows("" & l & ":" & l & "").Select
Selection.Font.ColorIndex = 5
Else
Rows("" & l & ":" & l & "").Select
Selection.Font.ColorIndex = 1
End If
End If
Next
Application.ScreenUpdating = True
Range("f1").Select
End Sub
Voici une macro
Sub formatConditionnelle()
Application.ScreenUpdating = False
For Each c In [f1:f25] 'plage a testée
c.Select
Dim l As Long
l = ActiveCell.[Row]
If ActiveCell.Value = "Vente" And ActiveCell.Offset(0, 9) <> "" Then
Rows("" & l & ":" & l & "").Select
Selection.Font.ColorIndex = 45
Else
If ActiveCell.Value = "Vente" And ActiveCell.Offset(0, 9) = "" Then
Rows("" & l & ":" & l & "").Select
Selection.Font.ColorIndex = 5
Else
Rows("" & l & ":" & l & "").Select
Selection.Font.ColorIndex = 1
End If
End If
Next
Application.ScreenUpdating = True
Range("f1").Select
End Sub
Merci de ta réponser c'est impec. Par contre j'essaie de comprendre à chaque fois pour mieux réutiliser par la suite et je constate que j'ai un peu de mal à saisir les phrases :
Application.ScreenUpdating = False
et
Application.ScreenUpdating = True
ça veut dire mise à jour de l'écran ? Pour moi ça voudrait dire que la macro fonctionne sans l'appeler mais comme ça ne fonctionne pas tout seul j'aimerai savoir exactement ce que ça veut dire pour l'utiliser à bon escient. Peut-être que ma question est stupide pour les pro mais j'aime comprendre ce que je fais.
Merci de ta réponse
A+
Eve