sommeprod et données croisées

Le
bcar
Bonjour,

soit les données suivantes

Tableau1 (en A1)
nom valeur valeurATrouver
Bob 100 ?
Ben 200 ?
Bil 250 ?
Bul 300 ?

Tableau2 (en A7)
nom1 nom2 %
Bob Bul 0.1
Ben Bul 0.1
Bob Bil 0.2
Bil Bul 0.2

je veux trouver valeurATrouver qui est définie de la manière suivante
valeurATrouver de A1 = 0.1*300 + 0.2*250
(Pour chaque ligne de T2 avec nom1 = nom dans T1, on prend % * valeur de
nom2 dans T1, et on fait la somme de tout ça)

j'ai donc écrit la formule suivante
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))

Ca ne fait pas ce que je veux, mais en plus en fonction de la cellule ou
je met la formule, le résultat n'est pas le même (sur les lignes
8-9-10-11 j'obtiens des chiffres (différents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)

Donc si quelqu'un à une explication à ce phénomène ou/et une solution à
mon problème je suis preneur.
Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #22931201
bonjour bcar,

=(SOMMEPROD(($A$8:$A$11¢)*($C$8:$C$11=0.1))*0.1*300)+(SOMMEPROD(($A$8:$A$11¢)*($C$8:$C$11=0.2))*0.2*250)

isabelle



Le 2010-12-16 09:21, bcar a écrit :
Bonjour,

soit les données suivantes

Tableau1 (en A1)
nom valeur valeurATrouver
Bob 100 ?
Ben 200 ?
Bil 250 ?
Bul 300 ?

Tableau2 (en A7)
nom1 nom2 %
Bob Bul 0.1
Ben Bul 0.1
Bob Bil 0.2
Bil Bul 0.2

je veux trouver valeurATrouver qui est définie de la manière suivante
valeurATrouver de A1 = 0.1*300 + 0.2*250
(Pour chaque ligne de T2 avec nom1 = nom dans T1, on prend % * valeur de
nom2 dans T1, et on fait la somme de tout ça)

j'ai donc écrit la formule suivante
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))

Ca ne fait pas ce que je veux, mais en plus en fonction de la cellule ou
je met la formule, le résultat n'est pas le même (sur les lignes
8-9-10-11 j'obtiens des chiffres (différents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)

Donc si quelqu'un à une explication à ce phénomène ou/et une solution à
mon problème je suis preneur.
Merci
LSteph
Le #22931381
Bonjour,

Plusieurs points contradictoires

1-Ceci
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))


ne me semble pas correspondre à ce que tu as demandé
2- mais apporte une explication à cela
8-9-10-11 j'obtiens des chiffres (diff rents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)


Il ne faut pas que tes matrices se décalent donc y mettre des valeurs
absolues $a$8:$a$11

3- Comment peux tu obtenir ceci
valeurATrouver de T en A1 = 0.1*300 + 0.2*250


cela ne répond pas à ce que tu dis ou pas à ton tableau
pour nom1 en ligne première des données je lis Bob et
pour nom 2 Bul
avec sur cette même ligne 0.1
donc d'où sort le 0.2
ensuite pour Bob
je lis 100 et non 300
pour bul 300 ert non 250

d'autre part puisque les mêmes prénoms apparaissent plusieurs fois
lequel faudrait - il prendre edeans quel cas et selon quelle
condition.
a fortiori cela n'a aucune chance de fonctionner avec ce recherchev
qui choisira la 1ère occurence trouvée.

Peux tu clarifier?

Cordialement.

--
LSteph




n 16 déc, 15:21, bcar
Bonjour,

soit les donn es suivantes

Tableau1 (en A1)
nom     valeur  valeurATrouver
Bob     100     ?
Ben     200     ?
Bil     250     ?
Bul     300     ?

Tableau2 (en A7)
nom1    nom2    %
Bob     Bul     0.1
Ben     Bul     0.1
Bob     Bil     0.2
Bil     Bul     0.2

je veux trouver valeurATrouver qui est d finie de la mani re suivante
valeurATrouver de A1 = 0.1*300 + 0.2*250
(Pour chaque ligne de T2 avec nom1 = nom dans T1, on prend % * valeur d e
nom2 dans T1, et on fait la somme de tout a)

j'ai donc crit la formule suivante
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))

Ca ne fait pas ce que je veux, mais en plus en fonction de la cellule ou
je met la formule, le r sultat n'est pas le m me (sur les lignes
8-9-10-11 j'obtiens des chiffres (diff rents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)

Donc si quelqu'un une explication ce ph nom ne ou/et une solution
mon probl me je suis preneur.
Merci
michel ou sam
Le #22931641
Bonjour,
j'ai ressorti ma boule de cristal et sans répondre entièrement à ta question

mets en D8 : =SOMMEPROD(C8*($A$2:$A$5¸)*($B$2:$B$5))
et tu copies jusque D11
puis mets en C2 : =SOMMEPROD(($A$8:$A$11¢)*$D$8:$D$11)
et tu copies jusque C5

Est ce le résultat recherché ?
Michel

"LSteph"
Bonjour,

Plusieurs points contradictoires

1-Ceci
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))


ne me semble pas correspondre à ce que tu as demandé
2- mais apporte une explication à cela
8-9-10-11 j'obtiens des chiffres (diff rents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)


Il ne faut pas que tes matrices se décalent donc y mettre des valeurs
absolues $a$8:$a$11

3- Comment peux tu obtenir ceci
valeurATrouver de T en A1 = 0.1*300 + 0.2*250


cela ne répond pas à ce que tu dis ou pas à ton tableau
pour nom1 en ligne première des données je lis Bob et
pour nom 2 Bul
avec sur cette même ligne 0.1
donc d'où sort le 0.2
ensuite pour Bob
je lis 100 et non 300
pour bul 300 ert non 250

d'autre part puisque les mêmes prénoms apparaissent plusieurs fois
lequel faudrait - il prendre edeans quel cas et selon quelle
condition.
a fortiori cela n'a aucune chance de fonctionner avec ce recherchev
qui choisira la 1ère occurence trouvée.

Peux tu clarifier?

Cordialement.

--
LSteph




n 16 déc, 15:21, bcar
Bonjour,

soit les donn es suivantes

Tableau1 (en A1)
nom valeur valeurATrouver
Bob 100 ?
Ben 200 ?
Bil 250 ?
Bul 300 ?

Tableau2 (en A7)
nom1 nom2 %
Bob Bul 0.1
Ben Bul 0.1
Bob Bil 0.2
Bil Bul 0.2

je veux trouver valeurATrouver qui est d finie de la mani re suivante
valeurATrouver de A1 = 0.1*300 + 0.2*250
(Pour chaque ligne de T2 avec nom1 = nom dans T1, on prend % * valeur de
nom2 dans T1, et on fait la somme de tout a)

j'ai donc crit la formule suivante
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))

Ca ne fait pas ce que je veux, mais en plus en fonction de la cellule ou
je met la formule, le r sultat n'est pas le m me (sur les lignes
8-9-10-11 j'obtiens des chiffres (diff rents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)

Donc si quelqu'un une explication ce ph nom ne ou/et une solution
mon probl me je suis preneur.
Merci
michel ou sam
Le #22932291
Bonjour,
j'ai commis ça un peu par hazard, sélectionne C2:C5
mets ceci dans la zone de formule et valide en matriciel en appuyant sur les
3 touches Ctrl, Maj, Entrée
=SOMMEPROD(($A$8:$A$11¢)*SOMME.SI($A$2:$A$5;$B$8:$B$11;$B$2:$B$5)*($C$8:$C$11))

est ce le résultat espéré ?
Michel

"michel ou sam" 4d0a4c3c$0$7681$
Bonjour,
j'ai ressorti ma boule de cristal et sans répondre entièrement à ta
question

mets en D8 : =SOMMEPROD(C8*($A$2:$A$5¸)*($B$2:$B$5))
et tu copies jusque D11
puis mets en C2 : =SOMMEPROD(($A$8:$A$11¢)*$D$8:$D$11)
et tu copies jusque C5

Est ce le résultat recherché ?
Michel

"LSteph"
Bonjour,

Plusieurs points contradictoires

1-Ceci
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))


ne me semble pas correspondre à ce que tu as demandé
2- mais apporte une explication à cela
8-9-10-11 j'obtiens des chiffres (diff rents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)


Il ne faut pas que tes matrices se décalent donc y mettre des valeurs
absolues $a$8:$a$11

3- Comment peux tu obtenir ceci
valeurATrouver de T en A1 = 0.1*300 + 0.2*250


cela ne répond pas à ce que tu dis ou pas à ton tableau
pour nom1 en ligne première des données je lis Bob et
pour nom 2 Bul
avec sur cette même ligne 0.1
donc d'où sort le 0.2
ensuite pour Bob
je lis 100 et non 300
pour bul 300 ert non 250

d'autre part puisque les mêmes prénoms apparaissent plusieurs fois
lequel faudrait - il prendre edeans quel cas et selon quelle
condition.
a fortiori cela n'a aucune chance de fonctionner avec ce recherchev
qui choisira la 1ère occurence trouvée.

Peux tu clarifier?

Cordialement.

--
LSteph




n 16 déc, 15:21, bcar
Bonjour,

soit les donn es suivantes

Tableau1 (en A1)
nom valeur valeurATrouver
Bob 100 ?
Ben 200 ?
Bil 250 ?
Bul 300 ?

Tableau2 (en A7)
nom1 nom2 %
Bob Bul 0.1
Ben Bul 0.1
Bob Bil 0.2
Bil Bul 0.2

je veux trouver valeurATrouver qui est d finie de la mani re suivante
valeurATrouver de A1 = 0.1*300 + 0.2*250
(Pour chaque ligne de T2 avec nom1 = nom dans T1, on prend % * valeur de
nom2 dans T1, et on fait la somme de tout a)

j'ai donc crit la formule suivante
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))

Ca ne fait pas ce que je veux, mais en plus en fonction de la cellule ou
je met la formule, le r sultat n'est pas le m me (sur les lignes
8-9-10-11 j'obtiens des chiffres (diff rents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)

Donc si quelqu'un une explication ce ph nom ne ou/et une solution
mon probl me je suis preneur.
Merci




michel ou sam
Le #22932411
oups
erreur de ma part, mets la formule en C2 :
=SOMMEPROD(($A$8:$A$11¢)*SOMME.SI($A$2:$A$5;$B$8:$B$11;$B$2:$B$5)*($C$8:$C$11))et valide la en matriciel en appuyant sur les 3 touches Ctrl, Maj, Entréepuis copie jusque C5Michel"michel ou sam"
michel ou sam
Le #22932401
Bonjour,
je ne sais pas ce qui est arrivé à mon dernier envoi alors je recommence
mets cette formule en C2 ou dans tout autre cellule:
=SOMMEPROD(($A$8:$A$11¢)*SOMME.SI($A$2:$A$5;$B$8:$B$11;$B$2:$B$5)*($C$8:$C$11))etvalide la en matriciel en appuyant sur les 3 touches Ctrl, Maj, Entrée puiscopie vers le bas jusque C5Le résultat est il bon ?Michel"bcar"
michel ou sam
Le #22932391
Bonjour,
grrr ! pourquoi ça fait ça !? - dernier envoi -

mets la formule en C2 :
=SOMMEPROD(($A$8:$A$11¢)*SOMME.SI($A$2:$A$5;$B$8:$B$11;$B$2:$B$5)*($C$8:$C$11))et valide la en matriciel en appuyant sur les 3 touches Ctrl, Maj, Entréepuis copie jusque C5Michel
bcar
Le #22933381
Le 16/12/2010 20:48, michel ou sam a écrit :
oups
erreur de ma part, mets la formule en C2 :
=SOMMEPROD(($A$8:$A$11¢)*SOMME.SI($A$2:$A$5;$B$8:$B$11;$B$2:$B$5)*($C$8:$C$11))et valide la en matriciel en appuyant sur les 3 touches Ctrl, Maj, Entréepuis copie jusque C5




Excellent, c'est exactement le résultat que je cherchais.
Merci.
(en attendant de trouver la vraie formule j'étais passé par un résultat
intermédiaire)

En plus je n'ai pas besoin de "valider matriciellement" puisque
sommeprod encadre le tout.

Merci, je n'avais tout simplement pas pensé à utiliser un somme.si dans
le sommeprod.
bcar
Le #22933451
Bonjour,

merci a toi et a isabelle de vous être intéressé à mon problème.
J'avais bien vu que ma formule ne fonctionnait pas ;)
Seulement c'était ce que j'avais imaginé qui me semblait le plus proche
de ce que je voulais (au niveau de l'idée).

"michel ou sam" a proposé depuis une solution valide qui me convient.
Peut être qu'en regardant la solution vous comprendrez mieux mon
problème (qui n'était peut être pas très clairement énoncé).

Le 16/12/2010 17:25, LSteph a écrit :
Bonjour,

Plusieurs points contradictoires

1-Ceci
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))


ne me semble pas correspondre à ce que tu as demandé
2- mais apporte une explication à cela
8-9-10-11 j'obtiens des chiffres (diff rents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)


Il ne faut pas que tes matrices se décalent donc y mettre des valeurs
absolues $a$8:$a$11

3- Comment peux tu obtenir ceci
valeurATrouver de T en A1 = 0.1*300 + 0.2*250


cela ne répond pas à ce que tu dis ou pas à ton tableau
pour nom1 en ligne première des données je lis Bob et
pour nom 2 Bul
avec sur cette même ligne 0.1
donc d'où sort le 0.2
ensuite pour Bob
je lis 100 et non 300
pour bul 300 ert non 250

d'autre part puisque les mêmes prénoms apparaissent plusieurs fois
lequel faudrait - il prendre edeans quel cas et selon quelle
condition.
a fortiori cela n'a aucune chance de fonctionner avec ce recherchev
qui choisira la 1ère occurence trouvée.

Peux tu clarifier?

Cordialement.

--
LSteph

n 16 déc, 15:21, bcar
Bonjour,

soit les donn es suivantes

Tableau1 (en A1)
nom valeur valeurATrouver
Bob 100 ?
Ben 200 ?
Bil 250 ?
Bul 300 ?

Tableau2 (en A7)
nom1 nom2 %
Bob Bul 0.1
Ben Bul 0.1
Bob Bil 0.2
Bil Bul 0.2

je veux trouver valeurATrouver qui est d finie de la mani re suivante
valeurATrouver de A1 = 0.1*300 + 0.2*250
(Pour chaque ligne de T2 avec nom1 = nom dans T1, on prend % * valeur de
nom2 dans T1, et on fait la somme de tout a)

j'ai donc crit la formule suivante
=SOMMEPROD((A8:A11¢)*C8:C11*RECHERCHEV(B8:B11;A2:B5;2;FAUX))

Ca ne fait pas ce que je veux, mais en plus en fonction de la cellule ou
je met la formule, le r sultat n'est pas le m me (sur les lignes
8-9-10-11 j'obtiens des chiffres (diff rents pour chaque ligne) et pour
tous les autres emplacement j'obtiens un beau #valeur)

Donc si quelqu'un une explication ce ph nom ne ou/et une solution
mon probl me je suis preneur.
Merci



michel ou sam
Le #22935311
Bonjour,
merci aussi car tu m'as appris qqchose,
je n'avais pas remarqué qu'avec sommeprod, une formule qui à l'origine était
matricielle afin d'avoir un champ, n'avait plus besoin d'être validée en
matriciel.
Michel

"bcar" ief580$bvi$
Excellent, c'est exactement le résultat que je cherchais.
Merci.
(en attendant de trouver la vraie formule j'étais passé par un résultat
intermédiaire)

En plus je n'ai pas besoin de "valider matriciellement" puisque
sommeprod encadre le tout.

Merci, je n'avais tout simplement pas pensé à utiliser un somme.si dans
le sommeprod.
Publicité
Poster une réponse
Anonyme