Somme en fonction de la couleur du texte de la cellule

Résolu
buggs84870 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   -  
buggs84870 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je voudrai avoir un petit coup de main pour fabriquer le vba pour faire une action bien précise.

J'ai 2 colonnes dont l'une d'elle contenant des nombres et l'autre avec des chaines de caractères.

Je voudrai additionné la colonne avec les nombres en fonction de la couleur de la colonne contenant la chaine de caractère correspondant à la même ligne.

C'est assez dur à expliquer. Rien ne vaut un petit exemple pour que tout soit clair avec des """balises"""" pour illustrer la couleur de la chaîne dans excel

100 <red>Ce texte est rouge</red>
250 <black>Ce texte n'est pas rouge </black>
300 <red>Ce texte est rouge</red>
450 <black>Ce texte n'est pas rouge </black>
200 <red>Ce texte est rouge</red>
300 <black>Ce texte n'est pas rouge</black>

Résultat attendu 600

S'il y a des soucis de compréhension même avec l'exemple n'hésitez pas :)

Merci par avance de l'aide que vous allez m'apporter !
A voir également:

5 réponses

g Messages postés 1265 Date d'inscription   Statut Membre Dernière intervention   577
 
Bonjour,

Vois si tu peux utiliser le procédé de ce lien :
http://gerard.g.pagesperso-orange.fr/logexl_05.htm#somme_couleur_cellules

Cordialement
0
buggs84870 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   10
 
Bonjour g,

malheureusement le lien que tu as donné correspond plus ou moins à ce qui existe déjà.

Quelqu'un sur ce même forum a proposé un vba permettant d'additionné une plage en fonction de sa couleur.
Lien : https://forums.commentcamarche.net/forum/affich-4185981-excel-somme-cellules-uniques-texte-en-couleur

Par ailleurs c'est pas exactement ce que je veux. Car le vba fait la chose suivante:

<red>100</red>
<black>250 </black>
<red>300</red>
<black>450</black>
<black>200</black>
<black>300</black>

Resultat: 400

Description du vba du lien: compare toute la couleur de la plage de nombre en fonction d'une cellule ayant comme couleur d'écriture le rouge.

Cela marche correctement mais uniquement sur une seule plage. Ce que je voudrai justement c'est que la plage des nombres n'est pas une couleur différente mais que c'est la colonne juste à côté (composée de chaîne de caractère) qui décide OU NON d'additionnée, en fonction de sa couleur, le nombre associé sur la même ligne
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

Peux tu envoyer la partie concernée de ton fichier, sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu

Cdlmnt
0
buggs84870 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   10
 
voilà le lien cjoint: https://www.cjoint.com/c/EJEsFXaMLpH

Macro de la fonction cumul_couleur:

Public Function cumul_couleur(plage As Range, col As Range)
Dim elm As Object
Application.Volatile
cumul_couleur = 0
For Each elm In plage
If elm.Font.ColorIndex = col.Font.ColorIndex Then
cumul_couleur = cumul_couleur + elm.Value
End If
Next elm
End Function


PS: La couleur rouge des entreprises se fait grâce à une mise en forme conditionnelle du type "texte qui contient.."

Merci encore !
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

as tu vraiment besoin d'une macro
La formule de la MFC peut aussi s'appliquer à un SOMME.SI
http://www.cjoint.com/c/EJFlgS4uKOI

Cdlmnt
0
buggs84870 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   10
 
Héhé la fonction SOMME.SI marche bien car tu test en fonction du contenue de la cellule. Sur ton lien tu cherches d'additionner si la cellule = "moyenne"

La est toute la difficulté, car ce que je voudrai c'est pas en fonction du contenue écrit dans la cellule mais bel et bien la couleur de la police dans la cellule :).

Mon excel était peut être pas assez clair.

J'en ai refait un si tu es encore prêt à m'aider:

https://www.cjoint.com/c/EJFnVGOkZgH

Cordialement et merci encore de ton aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
En voici deux pour le prix d'une
http://www.cjoint.com/c/EJFogDE87mI

Attention
. La couleur ne doit pas provenir d'une MFC

Cdlmnt
0
buggs84870 Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   10
 
Bah écoute, c'est exactement ce que je voulais !

Merci beaucoup de ton aide !

Je mets le sujet resolu

Cordialement,
0