Mise en forme conditionnelle VBA 2 variables ligne entière [Résolu/Fermé]

- - Dernière réponse : via55
Messages postés
10969
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 août 2019
- 14 mars 2013 à 21:54
Bonjour!

Je veux créer une macro VBA pour une mise en forme conditionnelle à 2 variables (les 2 variable sont sur la même ligne), avec un fond vert si vrai pour les 2, un fond rouge si vrai pour 1 variable et pas de mise en forme si faux les 2. Il faut que la mise en forme conditionnelle soit faite sur la ligne entière.

La première variable est la colonne B : Date (si vide = faux, si remplie = vrai)
La 2e variable est située plus loin dans la colonne P, reliée à un menu déroulant. Si =1 = faux, si >1 = vrai.

Et j'aimerais ne pas avoir de bouton à peser pour actualiser.

Il y a beaucoup d'infos sur le net mais j'ai encore de la difficulté à mixer les codes ensembles...

Merci d'avance de votre aide!


Afficher la suite 

1 réponse

Messages postés
10969
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 août 2019
1371
0
Merci
Bonsoir

pas de besoin de VBA deux mise en forme conditionnelles suffisent

Sélectionner toutes les lignes en commençant par ex par la 3eme :

MFC nouvelle regle Utiliser une formule..;
et entrer la formule
=ET($B$3<>"";$P$3>1) puis choisir couleur

Recommencer l'opération avec cette fois la formule :
=OU(ET($B$3<>"";$E$3=1);ET($B$3="";$P$3>1)) et l'autre couleur


Cdlmnt
via55
Messages postés
10969
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 août 2019
1371 -
c'est pareil

Tu selectionnes TOUTES les lignes avant d'appliquer la MFC

Ou si tu l'a déjà appliqué à une ligne tu vas sur MFC Gerer les regles
Tu selectionne la regle puis clic dans le rectangle de S'applique à et tu selectionne avec la souris toutes les lignes où tu veux voir la MFC s'appliquer
Je me suis peut-être mal expliquer:
Si je sélectionne toutes les lignes, alors toutes les lignes sont dépendantes des cellules B4 et P4, mais moi je veux que chaque ligne soit indépendante selon ses propres résultats. Alors il faudrait que je crée 140 règles de mise en forme conditionnelles? C'est pour ça que je voulais le faire en VBA...
via55
Messages postés
10969
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 août 2019
1371 -
Ah oui OK

il suffit de rendre les references semi relatives en supprimant les $ devant les N°s de ligne
=ET($B4<>"";$P4>1) et =OU(ET($B4<>"";$E4=1);ET($B4="";$P4>1))
Tu fais faire les MFC avec ces formules sur une ligne
Ensuite tu selectionnes toute cette ligne
Tu double clic sur le pinceau en haut à gauche dans Accueil pour reproduire la mise en forme
et tu l'appliques sur tes 140 lignes que tu veux
Ha c'est exactement ça que je voulais, en beaucoup plus simple :) Merci beaucoup!
via55
Messages postés
10969
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 août 2019
1371 -
De rien
Excel est plein de ressources et on ne les connait jamais toutes !