Calculer des chiffres de la même couleur
Bonjour à tous,
J'élabore un tableau et je voudrais faire la somme des chiffres de la même couleur dans les différentes colonnes. J'ai trouvé sur le site mais quand je le fais. Pas possible. Vous dites même d'aller sur le VBA pour y mettre la formule mais je n'y arrive pas. L'autre problème est que mon excel 2010 est en anglais.
Donc si je comprends bien la formule serait : =SUMIFCOLOR($A$15:$AF$15;3) ??? que veut dire le 3???? et la formule est-elle bonne comme exemple???
Pour le 3, faut-il faire un programme ailleurs pour les couleur car je pense que c'est ce que vous expliquer???
Merci pour l'aide car c'est urgent, je dois terminer avant l'an prochain.
Bonsoir,
Je ne sais pas si ma réponse va réellement t'avancer car je suis novice en terme de macro / VBA, j'ai déjà réalisé une macro par rapport à des cellules en couleurs (mais sur excel 2003) aussi je peux déjà t'orienter vers le tableau de correspondance des couleurs et code excel du site :
https://www.excel-pratique.com/fr/vba/couleurs.php
Pour le reste, je te laisse aux mains des pros de ce forum !
Bonjour,
Le 3 est le n° de la couleur voulue.
Ci-joint une fonction pour la somme, et une autre pour récupérer le n° de la couleur.
Les couleurs doivent être mises manuellement.
Faire F9 ou valider une cellule pour rafraichir le résultat.
eric
Bonjour,
Merci pour vos réponses, mais je ne vois toujours pas comment faire. Les couleurs, c'est moi qui doit les programmer???? ou c'est déjà dans le programme excel 2010.
Quand je tape la formule =sumcolor(A18:AF18;3) il me marque"NAME"????.
Et aller dans le VBA ???? je ne vois pas comment faire???
De plus j'ai un excel en anglais.
Merci de m'aider.
PAtoche0495
mais je ne vois toujours pas comment faire. Les couleurs, c'est moi qui doit les programmer????
Tu as regardé mon fichier ? Je t'ai mis des exemples de formule.
Alt+F11 pour aller dans VBE, voir Module 1
eric
Re,
Oui mais je ne comprends pas comment faire???
Je peux faire un copier, coller de ta formule et la mettre dans mon module?? je te joins ton screen.... mais c'est pas si facile qu'on le croit...
De plus n'oubliez pas que je suis en anglais et ton module est encore bizarre car je vois que tu écris "sommecouleur" en français et tout le reste est en anglais????
je suis vraiment perdu......
merci
VBA (Visual Basic qui sert à faire des macros) est toujours en anglais, mais on nomme les procédures et fonctions comme on veut.
Crées un module standard dans ton classeur (clic-droit sur le projet, à gauche dans VBE et 'insertion... / module').
Tu y colles le code des 2 fonctions que tu trouves dans mon classeur.
Ce sont 2 fonctions personnalisées que tu peux ensuite utiliser dans une formule de ton classeur.
Une te permet de récupérer la couleur de police (tu parlais de couleur de chiffres, si c'est la couleur de fond ce n'est pas pareil...) utilisée sur une cellule.
L'autre te donne la somme avec cette couleur.
eric
Merci Eriiic,
Je viens d'essayer et NAME ne s'inscrit plus donc y a du bon. Mais il ne fait pas la somme des chiffres en rouge que j'inscris. et si je veux faire une autre formule pour une autre couleur????
merci
Là tu t'assois 5 min et tu prends le temps de la réflexion pour comprendre le fichier exemple que je t'ai mis.
Je ne suis pas à coté de toi pour te tenir la main et te montrer sur l'écran.
Pour une autre couleur, je t'ai déjà expliqué 3 fois comment les fonctions marchaient. Inutile de poser des questions si tu ne lis rien des réponses.
eric
Bonsoir Patoche !
Comme dit précédemment, je suis loin d'être un pro de la VBA et des macro, mais je vais tenter de t'aider, pour prendre le relais d'Eriiic qui semble perdre patience.
Je peux comprendre son agacement, quand on connaît son sujet, ça paraît bêta. Pour ma part, je te comprends d'autant mieux que je suis vraiment novice et que je découvre petit à petit les merveilles de la VBA. Je vais essayer de te guider au mieux.
Alors, pour ma part, je viens de tester sur ma version d'excel la formule suivante :
Tu fais Alt et F11 pour ouvrir ton éditeur VBA et dans "module", fais un copier-coller de la formule suivante :
Function SommeCouleurTexte(champ As Range, couleurTexte)
Application.Volatile
Dim c, temp
temp = 0
For Each c In champ
If c.Font.ColorIndex = couleurTexte Then
If IsNumeric(c.Value) Then temp = temp + c.Value
End If
Next c
SommeCouleurTexte = temp
End Function
Ensuite, dans ton tableau excel, tu vas porter la formule de calcul suivante :
= SommeCouleurTexte(A1:A25;3)
Bien sûr, tu vas moduler la plage de cellule selon ton souhait (ici j'ai pris la colonne A de la ligne 1 à 25, mais tu peux bien sûr faire la même chose avec une plus grande plage ou en ligne...!). Même chose pour la couleur de police, j'ai mis "3" pour la couleur rouge (cf mon lien de ce matin relatif à l'index des couleurs excel) mais tu peux en changer selon la couleur que tu veux calculer.
J'espère que ça fonctionnera avec ta version d'excel.
Pour rafraîchir tes résultats après ajout ou retrait de chiffres, il te suffira de taper sur F9.
Peut-être que cela se fera automatiquement étant donné qu'il y a la fonction d'Application.Volatile, mais je ne suis sûre de rien sur ce point ! A toi de tester..et redis moi si ça fonctionne.
Je te le souhaite, et en plus, ça me rendrait fière d'avoir pu aider quelqu'un à mon humble niveau !
Bonjour Ange qui passe...
Ha enfin quelqu'un qui me comprends.... Il est vrai que ce n'est pas facile pour un pro comme Eric d'expliquer aussi bien qu'il le fait et que les novices ne s'applique pas comme lui le veut. Mais j'ai essayé en copiant sa formule et il n'y a que les chiffres rouge qui fonctionnent et de plus j'ai des chiffres en décimal et la non plus, il ne s'additionnent pas.
Bien sûr que je vais tester ton programme et j'espère que ça marchera. La question que j'avais également, était, les couleurs, comment les trouvez-vous? comment savez-vous que le 3 est pur le rouge, que pour le bleu est 5 et ainsi de suite??? la je cale aussi. Sont-ils propres à Excel ou faut-il les programmer nous-même.
Je vais tester ce soir et te dirai si ça marche.
Merci à toi et bonne soirée
Patoche
Concernant les couleurs, je sais que le 3 équivaut au rouge car c'est inscrit dans l'index des couleurs excel (voir mon lien dans mon premier message, mais je te le fais également parvenir en pièce-jointe).
Sur ce tableau, tu vois que la case rouge contient un 3, donc le 3 est lié à la couleur rouge.
Si tu voulais calculer les chiffres d'une autre couleur, par exemple les chiffres en jaune, il te suffirait de regarder à quel numéro correspond le jaune dans ton index (le tableau dans la pièce-jointe). Ici, le 6 par exemple, c'est une nuance de jaune.
Dans ce cas, tu garderais la même macro (le code que je t'ai envoyé précédemment) et c'est juste ta formule de calcul qui deviendrait :
= SommeCouleurTexte(A1:A25;6)
Comme tu peux le voir, j'ai juste modifié le dernier chiffre de ma formule en remplaçant le 3 par un 6 (donc j'ai remplacé le calcul des chiffres de couleur rouge par le calcul des chiffres de couleur jaune). J'espère être claire dans mes explications !
Et si tu veux cumuler les sommes des chiffres de plusieurs couleurs (par exemple les chiffres en rouge ET les chiffres en jaune), il faudrait la formule suivante :
= SommeCouleurTexte(A1:A25;3)+SommeCouleurTexte(A1:A25;6)
Et ainsi de suite en fonction des couleurs des chiffres que tu veux additionner.
Il y a peut-être plus simple, surtout pour les pro de ce forum, mais pour ma part, c'est comme ça que je fais, et ça marche, donc ça me va (et à priori, je viens de tester, pas de problème avec les décimales).
![couleur index](https://forum.excel-pratique.com/file/img/0/31750_f546c878396ee71bae462e9de40e43b9.jpg)
Hier soir :
Ci-joint une fonction pour la somme, et une autre pour récupérer le n° de la couleur.
Cette am :
2 fonctions personnalisées que tu peux ensuite utiliser dans une formule de ton classeur.
Une te permet de récupérer la couleur de police (tu parlais de couleur de chiffres, si c'est la couleur de fond ce n'est pas pareil...) utilisée sur une cellule.
Plus des exemple d'utilisation de ces fonctions dans le classeur.
Avoue qu'il y a de quoi perdre patience et ne pas avoir envie de le ré-écrire une 3ème fois... Ca aurait servi à quoi si tu ne lis pas plus ?
eric
Re Ange...
Je viens d'essayer et ça marche à merveille, même avec des chiffres en décimale. Donc, si je comprends bien, les couleurs sont définies par excel. Mais comment fais-tu pour savoir introduire ces formules, tu as suivi des cours excel????? Enfin, un grand merci à toi mais je m'adresse aussi à Eriiic, qui s'est décarcassé aussi, merci à vous deux et je vais enfin élaborer ce tableau.
A+
Patoche
Pour Patoche :
Super ! Je suis vraiment contente d'avoir pu t'aider !!! Et pour te répondre, oui les codes/couleurs sont déjà définies, il suffit de toujours se référer au tableau que je t'ai envoyé. Ce n'est pas plus compliqué que cela.
Pour le reste, non, je n'ai rien inventé, il faut rendre à César ce qui est à César. J'avais une problématique similaire au bureau l'année dernière, et j'avais fait des recherches à l'époque, notamment sur ce forum. J'avais trouvé une formule qui fonctionnait (et fonctionne toujours !) très bien.
Donc, la création de formule, ce n'est pas de mon niveau, loin de là ! Mais disons que j'arrive tant bien que mal à adapter les formules existantes à d'autres situations. Pour le reste, c'est à force d'utiliser excel, on en vient à faire des découvertes et à force de les utiliser, on sait les expliquer. Voilà tout.
Bon courage pour la suite !
Pour Eric :
Je comprends parfaitement votre agacement, je le conçois parfaitement. C'est vrai que les outils étaient là, maintenant je ne pense pas me tromper en disant que Patoche n'est pas habitué aux fonctions d'excel et que ça peut paraître compliqué à reproduire et/ou comprendre surtout pour des utilisateurs débutants sur 'excel !
C'est pour ça que j'ai tenté de réaliser une autre approche, plus didacticiel peut-être (par habitude sans doute, ayant formé diverses nouvelles collègues dont deux qui ne sont pas copines avec excel, je ne peux que mettre en parallèle la situation de Patoche à la leur).
Je le sais d'autant mieux que, moi même sur un sujet ouvert par mes soins sur ce forum, j'ai du bien agacer la personne m'ayant aidée à résoudre mon problème parce que j'étais un peu empotée..et finalement, j'en viens à aider quelqu'un d'autre. Comme quoi, tout arrive !