Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Somme.si avec 2 critères

10 réponses
Avatar
arnaud
Je veux faire la somme d'une colonne selon 2 conditions, le client et le
rayon
J'utilise habituellement le somme.si mais elle n'accepte qu'une condition..
Le BDsomme est trop complexe pour mon tableau de 15000 lignes.

Il doit exister une fonction... mais laquelle ??

Merci pour les réponses

Arnaud

10 réponses

Avatar
JpPradier
Bonjour Arnaud

La fonction que tu cherches, c'est Sommeprod() :

=Sommeprod((A1:10=client)*(B1:B10=rayon)*1)

j-p
Avatar
JpPradier
Si tu veux rajouter la colonne quantité :

=Sommeprod((A1:A10=client)*(B1:B10=rayon)*(C1:C10))

j-p
Avatar
Claude-Alain
Tu peux essayer la formule matricielle suivante :

{=SOMME((a2:a15001="marc")*(b2:b15001="rayonA")
*c2:c15002)}

Pour les {}, au lieu de faire "enter" pour enregistrer la
formule, tu fais ctrl-maj-enter

Remarque : les 3 zones prénom, rayon et chiffres doivent
être de la même grandeur.

Claude-alain
-----Message d'origine-----
Je veux faire la somme d'une colonne selon 2 conditions,
le client et le

rayon
J'utilise habituellement le somme.si mais elle n'accepte
qu'une condition..

Le BDsomme est trop complexe pour mon tableau de 15000
lignes.


Il doit exister une fonction... mais laquelle ??

Merci pour les réponses

Arnaud


.



Avatar
Daniel.M
Salut Claude-Alain,

{=SOMME((a2:a15001="marc")*(b2:b15001="rayonA")*c2:c15002)}
_

...
Remarque : les 3 zones prénom, rayon et chiffres doivent être de la même
grandeur.


T'as très bien fait de le prévenir. :-)

Daniel M.

Avatar
arnaud
J'ai testé la sommeprod :
=SOMMEPROD(($B$2:$B$10000¹0)*($I$2:$I$10000=G90)*($F$2:$F$10000))
le résultat est 0 !!
et je suis sur la ligne 90

C'est parce que je suis obligé de mettre le nom entre guillemets ???
Je ne peux pas donner le numéro de la cellule ??







"JpPradier" a écrit dans le message
de news: #HtRs$
Si tu veux rajouter la colonne quantité :

=Sommeprod((A1:A10=client)*(B1:B10=rayon)*(C1:C10))

j-p



Avatar
JpPradier
Non, non. si ton nom en b90 et G90 sont écrits de la meme façon, ça devrait marcher. Tu as bien des
chiffres en colonne F ? sinon rajoute un *1 comme ceci :

=SOMMEPROD(($B$2:$B$10000¹0)*($I$2:$I$10000=G90)*($F$2:$F$10000)*1)

j-p
Avatar
JpPradier
Corriger mon post précédent :
Si en F tu n'as pas de chiffres :
=SOMMEPROD(($B$2:$B$10000¹0)*($I$2:$I$10000=G90)*1)

j-p
Avatar
Daniel.M
Salut j-p,

Tu as bien des chiffres en colonne F ? sinon rajoute un *1 comme ceci :

=SOMMEPROD(($B$2:$B$10000¹0)*($I$2:$I$10000=G90)*($F$2:$F$10000)*1)


Tu multiplies déjà F2:F10000 avec des booléens (des autres matrices
précédentes).
Le rajout de *1 n'y changera rien.

Salutations,

Daniel M.

Avatar
JpPradier
Bonjour Daniel

Effectivement. Mais comme je ne me rappelle jamais quand il faut mettre *1 et qu'en plus ça ne mange
pas de pain ... :-)

j-p
Avatar
claude-alain
;-))) j'ai pas les doigts en face des touches !!! merci
-----Message d'origine-----
Salut Claude-Alain,

{=SOMME((a2:a15001="marc")*(b2:b15001="rayonA")
*c2:c15002)}



_

....
Remarque : les 3 zones prénom, rayon et chiffres
doivent être de la même


grandeur.

T'as très bien fait de le prévenir. :-)

Daniel M.


.