Bonjour,
De façon littérale, SommeProd fait la somme des produits
=SOMME(PRODUIT(B2='perc';C2;D2);PRODUIT(B3='perc';C3;D3);PRODUIT(B4='perc';C4;D4);PRODUIT(B5='perc';C5;D5);PRODUIT(B6='perc';C6;D6))
en moins long :
=SOMME((B2='perc')*C2*D2;(B3='perc')*C3*D3;(B4='perc')*C4*D4;(B5='perc')*C5*D5;(B6='perc')*C6*D6)
en plus court :
=(B2='perc')*C2*D2+(B3='perc')*C3*D3+(B4='perc')*C4*D4+(B5='perc')*C5*D5+(B6='perc')*C6*D6
(B2='perc') a pour résultat VRAI ou FAUX où VRAI équivaut à 1 et FAUX équivaut à 0
=VRAI*C2*D2 a pour résultat C2*D2
=FAUX*C2*D2 a pour résultat 0
Pour voir le calcul effectué par la formule, tu tapes
=SOMMEPROD((B$2:B$6='perc')*C$2:C$6*D$2
$6)
Dans la barre de formule, tu sélectionnes la dernière partie et tu appuies sur F9
tu obtiens une matrice entre crochets :
=SOMMEPROD((B$2:B$6='perc')*C$2:C$6*{3,2;4;2,99;4,01;5})
Tu sélectionnes la 2ème partie, puis F9 et tu obtiens
=SOMMEPROD((B$2:B$6='perc')*{10;20;2;5;20}*{3,2;4;2,99;4,01;5})
puis la 1ère :
=SOMMEPROD({VRAI;FAUX;VRAI;VRAI;FAUX}*{10;20;2;5;20}*{3,2;4;2,99;4,01;5})
puis la 2ème et la 3ème
=SOMMEPROD({VRAI;FAUX;VRAI;VRAI;FAUX}*{32;80;5,98;20,05;100})
Excel a fait le produit de 10 par 3,2, de 20 par 4, de 2 par 2,99 etc
puis tu sélectionnes le tout puis F9 et ça donne :
=SOMMEPROD({32;0;5,98;20,05;0})
Excel a fait une matrice du produit de VRAI par 32, de FAUX par 80 (donc 0), de VRAI par 5,98, de VRAI par 20,05, de FAUX par 100 (donc 0)
Et SommeProd fait la somme de tous ces produits
=SOMME(32;0;5,98;20,05;0)
CQFD