J'ai une macro qui me change la couleur de la cellule en fonction des 3 premiers caractères du texte de la cellule. Cela fonctionne si je tape du texte. Mais comme c'est une formule qui compose le texte, la couleur ne change pas quand je change une donnée dans ma feuille..
Est il possible de remettre à jour la couleur quand je change une donnée (par exemple le poseur) ou comment je peux relancer ma macro sur mes cellules manuellement de façon à changer la couleur quand j'ai fait des modifs ?
Je vous joins un fichier avec la macro (alt+F11 pour y accéder).
ninbihan, je planchais sur le problème et j'ai vu ta solution.
Je ne connaissais pas "DirectDependents", c'est pas mal.
une petite amélioration:
En rajoutant:
Code:
zone.Interior.ColorIndex = xlNone
Après la déclaration de la variable zone (Set zone = ....), cela permet d'avoir les couleurs à jour en cas de changement de valeur dans la colonne E par exemple.
Sinon tu peux avoir plusieurs couleurs sur la même ligne.
J'ai encore un souci c'est que j'efface et je recopie des données dans les 7 premières colonnes via une macro. Lorsque j'efface la colonne des poseurs, cela plante la macro sur le "direct.dépendant" car je pense qu'il ne trouve plus de valeur. Si vous aviez une solution, ça serait sympa.
Merci mais cela ne fonctionne pas. Il suffit d'effacer les valeurs dans la colonne poseurs pour s'en apercevoir.
Si c'est plus simple, est qu'il possible de lancer cette macro comme une autre de façon manuelle, c'est que je puisse lancer le traitement par le menu macro d'excel une fois que j'ai copié mes données ?
Comment effaces tu tes données avec ta macro ( les 7 premières colonnes ) ?
Si c'est avec Delete cela provoque effectivement une erreur Ref dans les cellules.
Mais si tu utilises Clear il n'y a aucun problème. Tu peux effacer puis copier d'autres données à la place, les formules fonctionneront correctement et les couleurs aussi.
Je vous joins un fichier avec ma macro qui copie les données. J'utilise le menu outil macro pour la lancer. Quand je le fais, cela plante sur le coloriage des cellules.