Moyenne de deux colonnes multipliées 2 à 2

Fermé
LeBoums Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
krazykat Messages postés 11276 Date d'inscription   Statut Modérateur Dernière intervention   -
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 58993 Date d'inscription   Statut Contributeur Dernière intervention   17 367
 
=SOMMEPROD(B2:B999;C2:C999)/NB(C2:C999)
tout simplement ...
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
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 58993 Date d'inscription   Statut Contributeur Dernière intervention   17 367
 
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   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
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 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
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 11276 Date d'inscription   Statut Modérateur Dernière intervention  
 
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