Moyenne de deux colonnes multipliées 2 à 2

Fermé
LeBoums Messages postés 7 Date d'inscription mardi 3 avril 2012 Statut Membre Dernière intervention 9 septembre 2014 - 3 avril 2012 à 17:04
krazykat Messages postés 11238 Date d'inscription jeudi 18 janvier 2007 Statut Modérateur Dernière intervention 10 octobre 2019 - 4 avril 2012 à 12:38
Bonjour,
Je souhaite effectuer la moyenne de de deux colonnes qui sont multipliées deux à deux (fonction SOMMEPROD il me semble).
Ce sont des temps d'opérations (colonne 1) que je dois multiplier par un nombre d'opérateur (colonne 2) et je souhaite avoir la moyenne de temps de la totalité. Le souci c'est que je souhaite aussi que excel ne prenne pas en compte les cases vides dans la moyenne

Exemple :
Opé 1 : B2 : temps 20 C2 : nombre d'opé 2
Opé 2 : B3 : temps 30 C3 : nombre d'opé 4
Opé 3 : B4 : temps (vide) C4 : nombre d'opé (vide)
Opé 4 : B5 : temps 20 C5 : nombre d'opé 1

Je voudrai obtenir le resultat suivant : (B2*C2 + B3*C3 + B4*C4 + B5*C5)/3
Divisé par 3 et non par 4 car il n'y à rien dans les cases B4 et C4.

Puisque je cherche à créer un outil, cette page excel devra fonctionner quel que soit le nombre d'opération.

J'éspère que j'ai été clair.
Merci d'avance pour votre aide.


A voir également:

7 réponses

Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 096
3 avril 2012 à 17:17
=SOMMEPROD(B2:B999;C2:C999)/NB(C2:C999)
tout simplement ...
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
3 avril 2012 à 17:18
bonjour

pour faire simple
=SOMMEPROD(A2:A10;B2:B10)/NB(B2:B10)

RQ1. es tu sur qu'il faut diviser par le nb d'Opé et nom par le total de nb d'Opé
RQ2. tu peux remplacer la ligne 10 par ce que tu veux. On peut faire plus joli, en définissant de façon "dynamique" les plages de données (voir la fonction DECALER)

bonne suite
0
Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 096
3 avril 2012 à 17:38
Salut LeBoums.

La remarque de ccm81 mérite qu'on s'y arrête :

La moyenne que tu définis représente le volume moyen d'heures passées (et comptabilisées) pour une opération (qui peut nécessiter un ou plusieurs opérateurs).
La moyenne telle que la propose ccm81 donnerait le volume moyen d'heures par opération et par opérateur. Et la formule serait alors
=SOMMEPROD(B2:B999;C2:C999)/SOMME(C2:C999)
au lieu de
=SOMMEPROD(B2:B999;C2:C999)/NB(C2:C999).
0
LeBoums Messages postés 7 Date d'inscription mardi 3 avril 2012 Statut Membre Dernière intervention 9 septembre 2014
4 avril 2012 à 08:55
Merci pour vos reponses, je ne connaissais pas la fonction NB, c'est vraiment sympa.
0

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

Posez votre question
LeBoums Messages postés 7 Date d'inscription mardi 3 avril 2012 Statut Membre Dernière intervention 9 septembre 2014
4 avril 2012 à 09:42
Encore une chose, pour la somme des divisions deux à deux, quel est la fonction ??

(B2/C2 + B3/C3 + B4/C4 + B5/C5) sans tenir compte des cases vides bien sur.

Merci
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
4 avril 2012 à 10:25
1. je ne vois que quelque chose comme ça (ce qui ne veut pas dire que ...)
=SOMMEPROD(A2:A5;1/(B2:B5))
mais ça donne une erreur lorsqu'un des diviseurs vaut 0 (est absent)
il y a bien un moyen en mettant ces diviseurs absents à 1 ce qui ne changera pas le résultat, à condition que les numérateurs soient absents aussi
ce qui fait beaucoup de si ....

2. avec macro

Public Function spi(plage1, plage2) As Double
Dim nbli As Long, li As Long
Dim s As Double
s = 0
nbli = plage1.Rows.Count
For li = 1 To nbli
  If plage2.Cells(li, 1) <> 0 Then
    s = s + plage1.Cells(li, 1) / plage2.Cells(li, 1)
  End If
Next li
spi = s
End Function

qui s'utilise comme une fonction ordinaire
ex =SPI(A2:A5;B2:B5) donne le bon résultat dans toutes les situations
Alt-F11 puis insertion module et copier coller le code

bonne suite
0
krazykat Messages postés 11238 Date d'inscription jeudi 18 janvier 2007 Statut Modérateur Dernière intervention 10 octobre 2019 2 136
4 avril 2012 à 12:38
Bonjour,
Merci de ne plus créer de doublons et de rester dans cette discussion :
https://forums.commentcamarche.net/forum/affich-24858433-moyenne-de-deux-colonnes-divisees-deux-a-deux
0