Moyenne de chiffres de la meme couleur

Le
globule
Bonjour a tous,

desirant faire une moyenne soit dans une cellule ou colonne, cette moyenne
doit etre realisée uniquement sur des valeurs de la meme couleur.
Exemple
Ligne colonne A B C D
1 10en rouge 5en bleu 5en rouge

et en colonne D je veux faire la moyenne des chiffres uniquement en Rouge).

voila mon petit probleme, j'ai essaye des petites choses avec le
=moyenne(couleur,celluleA1;C1) bref des choses et des choses sans vraiment
resultat desiré.

Merci pour votre aide
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #20520761
Bonjour.
Utilise la fonction ci-dessous. Tu dois préciser le nombre
correspondant à la couleur (255 pour le rouge "standard"). La couleur
prise en compte est la couleur du fond de la cellule, pas celle de la
police :

Function MoyenneCouleur(Couleur As Integer, Plage As Range)
Dim c As Range
For Each c In Plage
If c.Interior.Color = Couleur Then
If IsNumeric(c.Value) Then
ctr = ctr + c.Value
nb = nb + 1
End If
End If
If nb > 0 Then
MoyenneCouleur = ctr / nb
Else: MoyenneCouleur = ""
End If
Next c
End Function

Cordialement.
Daniel

Bonjour a tous,

desirant faire une moyenne soit dans une cellule ou colonne, cette moyenne
doit etre realisée uniquement sur des valeurs de la meme couleur.
Exemple
Ligne colonne A B C D
1 10en rouge 5en bleu 5en rouge

et en colonne D je veux faire la moyenne des chiffres uniquement en Rouge).

voila mon petit probleme, j'ai essaye des petites choses avec le
=moyenne(couleur,celluleA1;C1) bref des choses et des choses sans vraiment
resultat desiré.

Merci pour votre aide


FFO
Le #20520831
Salut à toi

Je ne pense que tu puisses utiliser une formule pour réagir sur le
format des cellules

Seule solution le code VBA

Cellule A1 et C1 en rouge
Cellule B1 en bleu

Aprés avoir mis ta cellule D1 avec la couleur correspondant à celle
dont tu souhaites la moyenne utilises ce code (rouge pour ton
exemple):

For Each c In Range("A1", "C1")
If c.Interior.ColorIndex = Range("D1").Interior.ColorIndex Then
Total = Total + c
n = n + 1
End If
Next
Range("D1") = Total / n

Le résultat donc en D1

Actualises :

Range("A1", "C1") pour une autre plage de cellules
Range("D1") pour une autre cellule dans laquelle tu souhaites la
moyenne

Fais des essais et dis moi !!!!!!!
globule
Le #20535351
Merci a vous je vais essayer vos solutions

globule

"FFO" a écrit :

Salut à toi

Je ne pense que tu puisses utiliser une formule pour réagir sur le
format des cellules

Seule solution le code VBA

Cellule A1 et C1 en rouge
Cellule B1 en bleu

Aprés avoir mis ta cellule D1 avec la couleur correspondant à celle
dont tu souhaites la moyenne utilises ce code (rouge pour ton
exemple):

For Each c In Range("A1", "C1")
If c.Interior.ColorIndex = Range("D1").Interior.ColorIndex Then
Total = Total + c
n = n + 1
End If
Next
Range("D1") = Total / n

Le résultat donc en D1

Actualises :

Range("A1", "C1") pour une autre plage de cellules
Range("D1") pour une autre cellule dans laquelle tu souhaites la
moyenne

Fais des essais et dis moi !!!!!!!
.



Publicité
Poster une réponse
Anonyme