SOMMEPROD avec un filtre variable

  • Initiateur de la discussion Initiateur de la discussion pacoako
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pacoako

XLDnaute Occasionnel
Bonjour à tous,

Après plusieurs recherches infructueuses sur google ainsi que sur votre forum, je n'ai d'autre choix que de vous soumettre directement ma question ! 😉

Alors voici mon problème :

J'essaie de faire un sommeprod sur un tableau dont la 1ère colonne correspond à des identifiant de dossier (PLAGE_ID) et la seconde colonne (PLAGE_NOMBRE) correspond au nombre de dossiers que j'ai à additionner.

En temps normal si je veux par exemple additionner le nombre de dossiers qui ont l'identifiant 30, je pourrais écrire ma formule comme suit :
=SOMMEPROD((PLAGE_ID=30)*(PLAGE_NOMBRE))

Dans le cas ou je voudrais additionner le nombre de dossiers qui correspond à plus d'un identifiant, par exemple 30 ou 31, je pourrais écrire ma formule comme suit :
=SOMMEPROD(((PLAGE_ID=30)+(PLAGE_ID=31))*(PLAGE_NOMBRE))

Ce qui me titille avec cette méthode c'est qu'il m'est impossible, de façon automatique d'ajuster ma formule si jamais je voudrais ajouter un autre identifiant à ma condition "OU" qui est représenté par le "+" dans la formule si haut.

Après investigation, j'ai trouvé une méthode qui simplifie pas mal la formule lorsque l'on a plusieurs identifiant a filtrer dans une condition de type "ou", la formule ressemblerait à ceci si je voudrais filtrer tous les identifiant qui sont 30, 31, 32, 33 ou 39 :

=SOMMEPROD((PLAGE_ID={30.31.32.33.39})*(PLAGE_NOMBRE))

Ma question est la suivante : N'est-il pas tout simplement possible d'inscrire le nom d'un tableau ou d'une plage au lieu du {30.31.32.33.39} ? J'ai beau essayer mais la fonction sommeprod me renvoit toujours une erreur lorsque je tente d'incrire un tableau après le "=" :

=SOMMEPROD((PLAGE_ID=TABLEAU)*(PLAGE_NOMBRE))

Merci d'avance pour vos commentaires! Bonne journée!
 

Pièces jointes

Dernière édition:
Re : SOMMEPROD avec un filtre variable

Bonsoir,

Un petit bout de fichier exemple aurait été le bienvenu.

Essaye ceci :

Code:
=SOMMEPROD((NB.SI(tableau;plage_id)*1))

Sous réserve d'avoir bien cerné ton souhait

@+
 
Re : SOMMEPROD avec un filtre variable

Bonjour pacoako, Tibo,

en effet la pj est d'un secours certain !
si tu n'as qu'un seul critère, on peut utiliser somme.si

={SOMME(SOMME.SI(PLAGE_ID;SI(PLAGE_ID=TABLEAU;TABLEAU;0);PLAGE_NOMBRE))}

formule matricielle à valider avec Ctrl+maj+Entrée

Cordialement
 
Re : SOMMEPROD avec un filtre variable

Salut à vous deux! Ça fonctionne bien avec un critère effectivement! Merci pour l'astuce... malheureusement mon cas réel utilise plusieurs critères... je t'entais de simplifier autant que possible mon problemo...

Merci pour votre aide! Et si jamais vous avez une idée pour le multi-critère, ne vous gènez surtout pas!

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
8
Affichages
1 K
Retour