|
Publicité | ||||||||||||||||||||||
|
|
#1 | ||
|
Candidat au titre de Membre du Club
![]() Nicolas Manin Inscription : février 2010 Messages : 61 ![]() |
Bonjour à tous,
j'ai crée en VBA une mise en forme conditionnelle avec 5 conditions que voici : Code :
J'aimerais simplement que ma macro copie la couleur de fond de la case E(x) dans la case D(x) quand une des 5 conditions est remplie pour cette case ... Est-ce possible ? Merci d'avance à quiconque prendra le temps de me lire. @+ Vapo Dernière modification par vapordinateur ; 09/03/2010 à 16h40. |
||
|
|
00
|
|
|
#2 |
|
Office & Excel ![]() ![]() ![]() |
Bonjour
Une solution simple consisterait à appliquer la même MFC sur D que sur E, en s'appuyant sur les valeurs de E...
__________________
"Plus les hommes seront éclairés, plus ils seront libres" (Voltaire) --------------- Ma nouvelle vidéo: comparer des listes via une MFC - Mes articles sur DVP Vous souhaitez rédiger pour DVP? Contactez-moi Amoureux de la langue française? Venez corriger nos ressources VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA... N'oubliez pas de VOTER (en bas à droite d'un message) --------------- |
|
00
|
|
|
#3 | ||
|
Candidat au titre de Membre du Club
![]() Nicolas Manin Inscription : février 2010 Messages : 61 ![]() |
Oui c'est ce que je voudrais mais je ne sais pas comment faire...
je suis assez débutant en VBA, j'ai juste adapté un code trouvé sur internet. Il faut qua ça ressemble à ça ??? : Code :
Pour simplifier, n'existe-t-il pas un moyen du genre : Code :
("e9:e200").Interior.ColorIndex = ("d9:d200).Interior.ColorIndex Dernière modification par vapordinateur ; 10/03/2010 à 09h12. |
||
|
|
00
|
|
|
#4 | ||||
|
Candidat au titre de Membre du Club
![]() Nicolas Manin Inscription : février 2010 Messages : 61 ![]() |
Bon alors j'ai trouvé une solution que j'arrive à appliquer sur une case en particulier, j'ajoute ceci à mon code (pour la case E9 dans ce cas) :
Code :
une erreur dans mon code ??? : Code :
|
||||
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : octobre 2006 Messages : 47 ![]() |
Sans le code complet, on ne peut pas t'aider...
|
|
|
00
|
|
|
#6 | ||
|
Candidat au titre de Membre du Club
![]() Nicolas Manin Inscription : février 2010 Messages : 61 ![]() |
Alors le voici ^^
Code :
J'ai l'impression qu'il n'associe pas E(x) à D(x) ou alors qu'il faut que toute ma plage des E soit sur fond rouge pour faire passer ma plage des D sur fond rouge (ce qui n'est pas ce que je veux...). Je veux que si E(135) à un fond rouge, D(135) passe sur fond rouge. N'hésitez pas à me poser des questions si je n'ai pas été clair [EDIT] : hé DVANO tu habites à vienne, moi je suis de chonas l'amballan juste à côté...^^ |
||
|
|
00
|
|
|
#7 | ||
|
Membre Expert
![]() Inscription : juillet 2007 Messages : 2 134 ![]() |
Salut vapordinateur et le forum
Un essais Code :
|
||
|
|
00
|
|
|
#8 |
|
Candidat au titre de Membre du Club
![]() Nicolas Manin Inscription : février 2010 Messages : 61 ![]() |
Bonjour,
merci pour cette tentative mais ça n'a pas été concluant, avec ce code, dès que j'ai activé l'évènement "change", il m'a mis toute les cellules de la colonne "D" sur fond blanc... Une question à deux francs, quand on fait , il prend l'ensemble ou alors il parcoure les cases une par une ??? Dernière modification par vapordinateur ; 10/03/2010 à 16h56. |
|
|
00
|
|
|
#9 | ||
|
Candidat au titre de Membre du Club
![]() Nicolas Manin Inscription : février 2010 Messages : 61 ![]() |
RRRRR J'ai tout essayé je ne comprend pas pourquoi il accepte
Code :
If Range("E9").Interior.ColorIndex = "3" Then Range("D9").Interior.ColorIndex = "3" Code :
If Range("E9:E167").Interior.ColorIndex = "3" Then Range("D9:D167").Interior.ColorIndex = "3" J'ai une idée mais je n'arrive pas à la mettre en oeuvre. Je pense qu'il faut que je définisse une nouvelle variable avec un objet range sur la colonne D (ex : cellD) et que j'ai une formule qui ressemble à ça : Code :
If lacellule.Interior.ColorIndex = "3" Then cellD.Interior.ColorIndex = "3" [EDIT] : Je viens d'essayer ceci mais ça n'a pas l'air de vouloir fonctionner non plus... Code :
@+ Vapo Dernière modification par vapordinateur ; 10/03/2010 à 17h20. |
||
|
|
00
|
|
|
#10 | ||||
|
Membre expérimenté
![]() |
j'ai survoler de très haut tes problèmes :
je m'arrête sur le dernier code : Code :
Regarde bien en orange, tu lui demandes de sélectionner la plage de cellules de ce qui est entre guillements (en VBA, les guillements déclarent une chaine de caractères littérale) donc la plage d'adresse "D & i" à chaque tour de boucle. Il faut mettre : Code :
Idem pour "E" Bonne continuation. ESVBA |
||||
|
|
00
|
|
|
#11 | |||
|
Membre expérimenté
![]() |
Citation:
Si on modifie une valeur, pour que la couleur soit actualisée, il faut fermer et réouvrir le classeur ? Ben... OUI Il faut faire le changement de couleur au changement de valeur dans une cellule de la feuille. Donc utiliser la procédure événementielle suivante placée dans le module de la feuille utilisée : Place le code du genre : Code :
Attention : non testé cette fois. ESVBA |
|||
|
|
00
|
|
|
#12 | |||
|
Membre Expert
![]() Inscription : juillet 2007 Messages : 2 134 ![]() |
Salut vapordinateur et le forum
Citation:
Je n'ai fait que rajouter E9:E20 dans la boucle. N'empêche que comme je l'ai signalé, c'est un code qui ne me plait pas : - On recolorie toutes les cellules pour un seul changement dans la feuille, même si il ne correspond pas à la plage. - On complique le code pour rien. Je ne comprends toujours pas le besoin de passer par "Property Let". Moi, je ferais plutôt : Code :
|
|||
|
|
00
|
|
|
#13 |
|
Candidat au titre de Membre du Club
![]() Nicolas Manin Inscription : février 2010 Messages : 61 ![]() |
Et voila problème résolu. Merci tout le monde.
Ce qu'il me manquait que je ne connaissait pas, c'était la fonction c'était exactement ce qu'il me fallait. Et sinon "Gorfael", je te maintient que chez moi le code que tu proposes ne fonctionne pas, ça ne me colorie pas les cases en "D". Merci beaucoup pour ce petit moment de culture VBAcienne... ^^ @+ Et encore merci beaucoup à tout le monde. Dernière modification par AlainTech ; 08/05/2010 à 12h06. Motif: Balises [code] |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com