Sommeprod avec regroupement multicritère et création de nouvelle ligne [Résolu]

Messages postés
21
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
5 août 2019
- - Dernière réponse : Ryo_976
Messages postés
21
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
5 août 2019
- 5 août 2019 à 19:53
Bonjour,


Je cherche à faire un sommeprod avec affichage multicritère.

Je ne sais pas si mes explications seront assez clairs, mais bon je me lance.
J'ai compris que sommeprod permet d'obtenir un résultat final au travers de "x" conditions.

Mais comment faire pour afficher les résultats dans un tableau, des sommes de chacune des variables regroupés d'une colonne avec sommeprod ?

Certain d'entre vous aurait tendance à me répondre en faisant un TCD mais je cherche vraiment à m'en passer pour une question de construction personnalisé de tableau.

https://www.cjoint.com/c/IHfly0c33Tg


Je vous donne un exemple ci-dessus.
Merci pour vos idées :)

Bien Cordialement,
Ryo
Afficher la suite 

5 réponses

Messages postés
1914
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
7 août 2019
120
0
Merci
Bonjour,

Comme ça, par exemple :

Pour les libellés qui s'ajoutent automatiquement... Passe par un TCD !

A+
Commenter la réponse de Zoul67
Messages postés
24304
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
23 août 2019
4726
0
Merci
Bonjour
en C6 à tirer sur les trois premières lignes du tableau:

=SOMMEPROD(('Matrice Année N'.$B$2:$B$1000=B6)*(MOIS('Matrice Année N'.$A$2:$A$1000)=MOIS($C$3))*('Matrice Année N'.$C$2:$C$1000))

vous renverra les cumuls du mois dont n'importe quelle date est affichée en C3

la même en D6 avec$D$2:$D$1000 à la fin au lieu de $c$2:$C$1000

pour chercher entre deux dates hors mois:
avec début en C3 et fin en D3, remplacez
(MOIS('Matrice Année N'.$A$2:$A$1000)=MOIS($C$3))
par
.......('Matrice Année N'.$A$2:$A$1000>=$C$3)*('Matrice Année N'.$A$2:$A$1000<=($C$4)).......

quand à la deuxième partie de votre question dans le fichier, je ne comprend pas... qu'appelez vous lignes supplémentaires
pouvez vous compléter vos explications?
à vous lire
crdlmnt

Commenter la réponse de Vaucluse
Messages postés
2276
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
19 août 2019
734
0
Merci
Bonjour à tous,
Pour écourter les formules :renommer la feuille2 « AnN »
Entrer les dates de début et fin en C3 et D3
En C6 entrer la formule :
=SOMMEPROD((AnN.$A$2:$A$150>=$C$3)*(AnN.$A$2:$A$150<=$D$3)*(AnN.$B$2:$B$150=$B6)*(AnN.C$2:C$150))
Recopier vers le bas puis vers la droite. Attention il n'y a pas des $ partout !

Si j'ai bien compris la question!
Commenter la réponse de tontong
Messages postés
55
Date d'inscription
jeudi 18 juillet 2019
Statut
Membre
Dernière intervention
21 août 2019
2
0
Merci
Bonjour,

Pour obtenir automatiquement la liste des valeurs uniques de type de jeu, mets sur la feuille tableau cette formule en B6 :
=SIERREUR(INDEX(Matrice_Année_N.$B$2:$B$50; EQUIV(0; NB.SI($B$5:B5; Matrice_Année_N.$B$2:$B$50); 0));"")
Attention, formule matricielle à valider par Ctrl+Maj+Entrée, elle se mettra entre accolades et tire vers le bas

Cordialement
Commenter la réponse de ALS35
Messages postés
21
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
5 août 2019
0
Merci
Bonsoir à tous,

C'est Zoul67 qui se rapproche le plus de ce que je souhaite faire.
Ci dessous une version avec le tableau renseigné de mes formules.

Sauf que par exemple, si je rajoute un nouvel élément (dans mon exemple deux lignes TEST), comment faire en sorte sans TCD pour qu'une nouvelle ligne "TEST" et une seule, apparaisse dans mon tableau en faisant les calculs svp ?

https://www.cjoint.com/c/IHfoDMwO1Pg


merci beaucoup ;)
Bien à vous,
Ryo_976
Messages postés
21
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
5 août 2019
-
re bonjour,

oui sur la B6 sa me met bien le mot MARITIME,
après quand je tire la cellule vers le bas, j'ai une erreur de type "NOM?

Tu pourrais me montrer un exemple avec mon tableau ci-dessous stp ?

https://www.cjoint.com/c/IHfoDMwO1Pg

merci ,)
ALS35
Messages postés
55
Date d'inscription
jeudi 18 juillet 2019
Statut
Membre
Dernière intervention
21 août 2019
2 -
Comme ceci
https://www.cjoint.com/c/IHfo1Hp76Ww
Cordialement
Ryo_976
Messages postés
21
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
5 août 2019
-
Merci ALS35 c'est exactement ce que je cherchais à faire.

=SIERREUR(INDEX(Matrice_Année_N.$B$2:$B$50; EQUIV(0; NB.SI($B$5:B5; Matrice_Année_N.$B$2:$B$50); 0));"")

Sans trop t'en demander, tu pourrais m'expliquer en mode "pas à pas" comment fonctionne cette formule matricielle stp ?
C'est vraiment au top !!!

Merci beaucoup,
Bien Cordialement,
ALS35
Messages postés
55
Date d'inscription
jeudi 18 juillet 2019
Statut
Membre
Dernière intervention
21 août 2019
2 -
Bonjour,

NB.SI permet de compter dans la plage $B$5:B5, variable quand on tire, les différents items (matrice) de ta liste Matrice_Année_N.$B$2:$B$50 : en gros résultat 0 élément non présent, résultat 1 élément présent

EQUIV(0; permet d'avoir la position du premier élément non présent

INDEX(Matrice_Année_N.$B$2:$B$50 permet de récupérer cet élément dans la liste

SIERREUR permet de ne pas afficher les valeurs d'erreurs pour les cellules vides

Attention, ton fichier est au format ods (LibreOffice ?), moi je suis passé par Excel, ce qui explique la différence sur les noms des feuilles, à voir sur tes fichiers.

Bon courage
Ryo_976
Messages postés
21
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
5 août 2019
-
Bonsoir,

Merci beaucoup ALS35, tout est clair est la solution me convient parfaitement. Tu m'a beaucoup aidé

Très bonne semaine :)
Commenter la réponse de Ryo_976