La fonction SOMMEPROD associée à SI dans une plage

Résolu
DM -  
 DM -
Bonjour,
Je voudrais employer la fonction SOMMEPROD dans une condition SI, qui s'appliquerait sur une plage de la même dimension. La formule utilisée est suivante, mais je reçois un message d'erreur. Quelqu'un peut m'aider à la corriger?
SI(AY17:AY2533=0; SOMMEPROD(AI17:AI2533;AS17:AS2533); SOMMEPROD(AI17:AI2533;AY17:AI2533))

2 réponses

michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour

que veux tu dire avec
AY17:AY2533=0 ? pour chaque ligne ou la somme de la colonne ?

dans le 2° sommeprod tu écris SOMMEPROD(AI17:AI2533;AY17:AI2533))
c'est la colonne AI ou AY ?
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Si tu traites ligne par ligne
maquette sur 6 lignes Et 3 colonnes (A,B,C) en considérant que la colonne est AY

=SOMME(SI(A4:A10=0;B4:B10*C4:C10;B4:B10*A4:A10))
Formule matricielle à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule. La formule est alors encadrée automatiquement par des accolades : { formule }

la maquette
https://mon-partage.fr/f/QNsvnILs/

Maintenant, avec sommeprod ou une matricielle sur 2500 lignes, tu as largement le temps d'aller siroter très doucement un café...
0
DM
 
Ceci est exactement ce que je voulais, mais il semble que cela n'est pas possible de le faire avec SOMMEPROD et SI. Toutefois Ta solution donne le résultat attendu. Merci infiniment.
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Sommeprod est en fait une matricielle masquée !
0
DM
 
Ce que je remarque avec la formule matricielle comme aussi avec SOMMEPROD, le résultat affiche toujours #VALEUR!, au lieu de donner une valeur fixe? Quand je réduis le nombre des lignes à 200 par exemple, il affiche le résultat
0
DM
 
Cette forme matricielle est donc limitée en nombre de lignes? Que doit-on faire pour élargir le nombre des lignes?
0
DM
 
AY c'est la colonne qui va de la ligne 17 à 2533. Je peux simplifier la formule en ceci:
Si(M17:M2533=0; SOMMEPROD(B17:B2533;C17:C2533); SOMMEPROD(B17:B2533;M17:M2533)). Je voudrais que quand chaque cellule de la colonne M, de la ligne 17 à 2533 a pour valeur 0, on calcule le 1er SOMMEPROD et dans le cas contraire, on calcule le 2e SOMMEPROD.
0