Fonctions Moyenne en fonction de la couleur des cellules

Bonjour,

Je viens sur ce site car j'ai un petit problème. Je n'y connais rien du tout en code VBA et je souhaiterai creer des fonctions personnalisées en fonction de la couleur des cellules mais je ne sais pas comment faire.

Je vous envoie un fichier en pièce jointe.

Merci beaucoup de votre aide !

00Alexandra

Bonjour

Voir fichier

228test-moyenne.zip (12.72 Ko)

Merci beaucoup pour ce fichier !

Ca marche si je veux changer les couleurs des cellules et que je veux appliquer la macro dans un autre fichier ?

Ou est ce aue c'est possible de creer une fonction du genre = Moyennecouleurbleu(selections des cellules) de facon a n'avoir qu'a taper la formule dans une cellule ?

Merci beaucoup ! =D

Bonjour

Pour une utilisation dans un autre fichier, il faudra réadapter la macro en fonction des coordonées des cellules à analyser.

(Car elles ne seront certainement pas dans la plage c3:c20 ! ?

En ce qui concerne de créer une fonction oui c'est sûrement possible mais là...Je ne suis pas compétent !

Voir même...Incompétent.

ok

Merci beaucoup pour votre aide !

On va dire que je vous ai aidé qu'à moitié !

Bonjour,

Un fichier qui sera peu-être plus explicite (sans rein enlever l'intervention de Lean).

C'est un fichier contenant 2 fonctions personnalisées de Jacques BOISGONTIER.

A toutes fins utiles car je sais que c'est un sujet qui revient assez souvent mais tellement pratique.

Bon fin de journée.

@+.

Deux solutions vallent mieux qu'une donc aucun souci

J'ai testé mais je n'ai pas eu de resultat...

Sans doute dois-je mal m'y prendre.

Bonjour,

Proposition de fonction personnalisée en vba à mettre dans un module standard (Alt+F11 pour ouvrir VBE).

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

Syntaxe :

=moyenneCouleur($C$3:$C$20;E3)

$C$3:$C$20 : plage dont on veut la moyenne

E3 : cellule de la couleur dont on veut la moyenne

eric

123classeur1.xlsm (16.12 Ko)

Ouaou c'est vraiment super merci enormement !!

Quand j'essaie de l'appliquer a mon autre fichier ca me met : #VALUE!

Je ne sais pas pourquoi ...

Moi non plus, je n'ai pas ton fichier.

Peut-être du texte qui se promène au milieu de la plage.

Tu pourrais ajouter au test and isnumeric(c) mais tu ne sera plus alertée si des valeurs sensées être numériques sont en texte, et tu auras un résultat faux.

eric

Je pense que c'est parce que mes cellules sont en couleur avec pa mise en forme conditionnelle. C'est cela vous pensez ?

Et oui, ça n'a rien à voir, et pas besoin de macro.

Réutilise ta formule de MFC pour choisir les cellules et faire ta moyenne sur celles-ci.

eric

JE vous donnes le fichier

Dans Sheet1, c'est la que je veux faire les moyennes de la colonne G de la feuile de donnees.

Merci bcp =D

Bonjour,

vu que tu peux avoir des textes dans C ça complique un peu. Ex pour TVR :

=SOMMEPROD(($B$150:$B$162="TVR")*(ESTNUM($C$150:$C$162))*($G$150:$G$162))/SOMMEPROD(($B$150:$B$162="TVR")*(ESTNUM($C$150:$C$162)))

Si missed en C alors la ligne n'est pas comptabilisée

eric

Merci ! Je vais voir ce aue je peux faire =D

Rechercher des sujets similaires à "fonctions moyenne fonction couleur"