Moyennesicouleur

Bonjour,

Après avoir (un peu) fouiné sur le forum, j'ai réussit à trouver une fonction et donc une formule pour mon tableau.

J'ai donc piqué la fonction d'ériiic (2013):

Code : Tout sélectionner

Function moyenneCouleur(plage As Range, couleur As Range) As Double

Dim coul As Long, c As Range, nb As Long, total As Double

coul = couleur.Interior.ColorIndex

For Each c In plage

If c.Interior.ColorIndex = coul Then

nb = nb + 1

total = total + c

End If

Next c

moyenneCouleur = total / nb

End Function

Mes problème sont les suivant:

  • quand je ferme mon classeur, ma fonction disparait..
  • si je change de couleur (en changeant également dans la formule hein) cela ne suit pas.
  • De même si je colore une cellule après avoir validé ma formule cela ne marche pas (la nouvelle cellule grisée n'est pas prise en compte dans la moyenne)

J'aimerai que ma formule évolue en fonction des cellules colorées ou non (on peut changer d'avis en cours de route)

en pj mon fichier..

Merci pour votre aide

Salut,

Tu ne nous as pas fourni ton fichier, puisque celui reçu n'a pas de macro !

Dans le fichier que je te retourne – selon la formule que tu as fournie et que j'ai mis en place - le calcul en B10 est dépendant de la couleur en O1.

Puis j'ai ajouté une autre macro qui actualise le calcul à chaque sélection nouvelle. Ainsi, si tu changes la couleur d'une cellule de la plage C6:M9, le résultat en B10 est adapté après que tu aies changé ta sélection de cellule.

Je n'ai aussi pas compris que tu dises que ta formule disparaît après que tu aies enregistré ton fichier. L'enregistres-tu éventuellement au format .xlsx au lieu de .xlsm ???

Cordialement.

4essai-couleur.xlsm (20.80 Ko)

Bonjour Yvrouille,

Merci pour ce fichier c'est parfait.

Petite question, lorsque je souhaite copier la formule pour un autre tableau (plus bas dans la feuille excel) cela ne fonctionne pas. La cellule m'affiche la formule et pas le résultat. Et si je la saisi (au lieu de faire un copier/coller formule) le résultat est erroné

#je suis une quiche

Merci de votre aide

Afin de réactualiser ton premier calcul, je n'ai pas trouvé d'autre moyen que de récrire, par macro, la formule dans la cellule concernée à chaque nouvelle sélection de cellule.

Ainsi, si tu effaçais par exemple la formule de la cellule B10 dans le dernier fichier fourni et que tu sélectionnais une autre cellule, le calcul était récrit immédiatement en B10 et réactualisé.

Comme tu souhaites cette formule ailleurs et avec des références différentes, j'ai modifié ma macro en conséquence. Mais à nouveau, si tu effaces par exemple la formule en B34, elle est réinscrite immédiatement.

Si tu ne sais pas modifier une macro pour d'autres utilisations, je veux bien continuer à t'aider, pour autant que ce ne soit pas 1000 nouveaux calculs par semaine. Sinon peut-être que quelqu'un d'autre à une meilleure idée ?

Indique peut-être ce fil comme résolu et rouvre-en un autre en précisant que tu as cette solution et que tu en cherches une meilleure.

Amicalement.

Rechercher des sujets similaires à "moyennesicouleur"