SOMMEPROD multicriteres variables

nicog

XLDnaute Nouveau
Bonjour,

Dans un tableau, je veux faire des sommes en fonction de conditions.
J'utilise donc la fonction SOMMEPROD
Mais j'ai un probleme si je ne veux pas utiliser une des conditions

Exemple:

Le tableau
Colonne 1 => les jour de la semaine
Colonne 2 => les annees
Colonne 3 => les vendeurs
Colonne 4 => les valeurs dont il faut faire la somme

Puis j'ai quelques cellules pour ecrire mes conditions
Cell a => choix du jour de la semaine
Cell b => choix de l'annee
Cell c => choix du vendeur
Cell d => affichage de la somme correspondant aux 3 criteres selectionnes

Si les trois premieres cellules sont remplies
Cell a => mercredi
Cell b => 2005
Cell c => Paul
Cell d => SOMMEPROD((Colonne 1 = Cell a)*(Colonne 2 = Cell b)*(Colonne 3 = Cell c)*(Colonne 4))
J'aurais bien un resultat (ce qu'a vendu Paul les mercredi en 2005)

Mais si je laisse "Cell a" vide avec la fonction SOMMEPROD, il va me renvoyer 0 comme resultat.
Car il n'y a pas de ligne dans le tableau ou le jour de la semaine n'est pas renseigne
Alors que moi je voudrais qu'il me calcule ce qu'a vendu Paul en 2005, QUELQUE SOIT le jour de la semaine!

Quelqu'un peut il m'aider

Puis je m'en sortir avec SOMMEPROD, ou faut il aller voir ailleurs?
Est il possible d'utiliser les caracteres generiques (mettre * dans Cella par exemple)? J'ai l'impression que non.

Merci
Nicolas

PS : Il ya bien une solution bourrin avec des fonctions SI et tout plein de SOMMEPROD, mais dans mon utilite, je peux avoir plus que 3 criteres et ca devient tres tres lourd!!!
 

nicog

XLDnaute Nouveau
Re : SOMMEPROD multicriteres variables

Mon tableau est sur une feuille que je souhaite masquer au final
Mes cellules de criteres sont donc sur une autre feuille, et c'est la ou je veux que le resultat s'affiche

du coup, je ne peux pas utiliser les filtres, non?
 

chris

XLDnaute Barbatruc
Re : SOMMEPROD multicriteres variables

Bonjour
ou
=si(estvide(cell a);SOMMEPROD((Colonne 2 = Cell b)*(Colonne 3 = Cell c)*(Colonne 4));SOMMEPROD((Colonne 1 = Cell a)*(Colonne 2 = Cell b)*(Colonne 3 = Cell c)*(Colonne 4)))
 

JeanMarie

XLDnaute Barbatruc
Re : SOMMEPROD multicriteres variables

Bonjour

Regarde le fichier joint, utilisation de la fonction BDSOMME.

L'inconvénient de cette fonction est l'utilisation d'une plage de critère.

@+Jean-Marie
 

Pièces jointes

  • BDSOMME.zip
    1.5 KB · Affichages: 68
  • BDSOMME.zip
    1.5 KB · Affichages: 82
  • BDSOMME.zip
    1.5 KB · Affichages: 70

nicog

XLDnaute Nouveau
Re : SOMMEPROD multicriteres variables

Merci Chris
Mais si l'affichage suivant que je souhaite, c'est dans "Colonne 2" que je ne veux pas de critere, ca ne marche pas
ou alors il faut pleins de conditions SI
et si j'ai 4 ou 5 criteres en plus, je te laisse imaginer le nombre de SI imbriquer les uns dans les autres!!!

(cf mon PS)
 

Monique

Nous a quitté
Repose en paix
Re : SOMMEPROD multicriteres variables

Bonjour,

Fais un essai comme ça :
=SOMMEPROD((($A$2:$A$10=CellA)+(CellA=""))*($B$2:$B$10= CellB)*($C$2:$C$10=CellC);$D$2:$D$10)

En nommant les 4 plages :
=SOMMEPROD(((Jour=CellA)+(CellA=""))*(An= CellB)*(Nom=CellC);Valeur)

Le + équivaut au OU des formules conditionnelles et le * équivaut au ET

SOMMEPROD(((Jour=CellA)+(CellA=""))*Valeur)
renvoie la somme de toutes les valeurs si "CellA" est vide, par exemple
 

Monique

Nous a quitté
Repose en paix
Re : SOMMEPROD multicriteres variables

Re,

Je n'avais pas compris ton PS
=SOMMEPROD(((Jour=CellA)+(CellA=""))*((An= CellB)+(CellB=""))*((Nom=CellC)+(CellC=""));Valeur)

Les cellules contenant les critères peuvent être vides, toutes ou 1 ou 2 ou aucune
 

chris

XLDnaute Barbatruc
Re : SOMMEPROD multicriteres variables

Re
Pourquoi ne pas faire un tableau croisé dynamique dans ce cas ?
L'utilisateur peut sélectionner ce qu'il veut y voir.

Sinon il faudrait que les trois colonnes soit interprétées : si c'est vide c'est une valeur qui couvre tous les cas : de lundi au dimanche pour le jour, compris en entre telle année et telle année pour l'année, etc

J'imagine qu'avec des listes des valeurs acceptables pour ces trois cellules on doit pouvoir remplacer chaque partie du sommeprod par quelque chose comme
(Colonne x = SI(estvide(cell x);recherchev(Colonne x;Listevaleurs;1;faux);cell x))
 
Dernière édition:

chris

XLDnaute Barbatruc
Re : SOMMEPROD multicriteres variables

RE
Je me doutais bien que si Monique passait pas là, tu aurais la formule magique.
Ayant reçu un coup de fil j'ai fini ma réponse après vos échanges d'où son décalage !!
Décidement SOMMEPROD est vraiment fantastique !
 

Statistiques des forums

Discussions
312 492
Messages
2 088 938
Membres
103 988
dernier inscrit
Feonix