Filtre et regroupement de données avec fonctions office 365

Bonjour à tous,

Suite à une demande d'un des membres, je cherche à trouver le même résultat avec les fonctions office 365.

Quelque chose m'échappe dans l'imbrication des formules.

Si quelqu'un pourrait me venir en aide...

16regoupement-jb.xlsx (13.27 Ko)

Bonjour JB_

Où est ta formule qui pose problème?

en I13? : =SIERREUR(INDEX(K:K;EQUIV(GRANDE.VALEUR(L:L;2);L:L;0));"")

Ou est ton problème , avec office365 :quelle fonction veux-tu en remplacement de quelle autre?

Personnellement , je ne suis pas du tout un expert de formule mais de VBA donc je me demande si je peux t'aider.

Si tu veux extraire une données d'un TCD: https://support.microsoft.com/fr-fr/office/fonction-liredonneestabcroisdynamique-8c083b99-a922-4ca0-...

Excuses moi, en général, je ne sais pas répondre au besoin exprimé.

Je te suggère d'explicite plus concrètement ton problème.

Bonjour,

Il est vrai que j'ai remis le fichier brut sans explications. Je m'en excuse ! un nouveau fichier est disponible dans mon post précèdent.

Je souhaite une solution avec les "nouvelles" fonctions disponibles d'Excel.

Dans ce cas, VBA ne m'intéresse pas, désolé

Bonjour à tous,

Une proposition :

16regoupement-jb.xlsx (13.30 Ko)

Bonjour DjiDji,

Merci pour la proposition mais elle ne convient pas, elle ne prend pas en compte le fait de sommer par article.

image

Logiquement le résultat serait 507.

Bonjour,

=LET(tbl;GROUPER.PAR(Tableau1[[critères]:[art]];Tableau1[nb];SOMME;;0;-3;Tableau1[critères]=N2);FILTRE(tbl;CHOISIRCOLS(tbl;2)=G4))

Oups, désolé, ne pas tenir compte.

Daniel

Bonjour DanielC,

Merci pour ta proposition.

On s'en rapproche. Mais je ne veux pas choisir d'article en particulier. Le principe c'est que la fonction me l'indique dés le départ.

C'est pourquoi la fin de la fonction "=G4" n'est pas adaptée pour mon cas

Bonjour,

Juste pour info, la fonction GROUPER.PAR n'est pas, à proprement parler, une nouvelle fonction 365, mais une fonction possiblement disponible en 2024.

Cette fonction n'est disponible que dans les versions de test (Insider).

A+

Bonjour à tous !

Les dernières évolutions de M365 ne sont pas encore disponibles dans mon environnement Insider 365 Apps for entreprise.

Contribution avec les "anciennes" fonctions :

=LET(
f;FILTRE(Tableau1[[art]:[nb]];Tableau1[critères]=N2);
u;UNIQUE(PRENDRE(f;;1));
t;BYROW(u;LAMBDA(l;SOMME(FILTRE(PRENDRE(f;;-1);PRENDRE(f;;1)=l))));
ASSEMB.H(SI(SEQUENCE(LIGNES(t));N2);TRIER(ASSEMB.H(u;t);2;-1))
)
=CHOISIRLIGNES(GROUPER.PAR(Tableau1[[critères]:[art]];Tableau1[nb];SOMME;;0;-3;Tableau1[critères]=M2);2)

Daniel

RE,

@OOoiste : Oui, effectivement, j'ai insider et donc nombreux sont ceux qui n'ont pas accès à cette fonction.

@JFL : Merci pour cette fonction, elle donne le même résultat que la fonction GROUPERPAR (que tu n'as pas du coup) :

=GROUPER.PAR(Tableau1[[critères]:[art]];Tableau1[nb];SOMME;;0;-3;Tableau1[critères]=N2)

Mon but étant de filtrer ce résultat sur la 2ème valeur le plus élevée et ainsi afficher seulement la ligne correspondante (ici en jaune) :

image

@DanielC : comme ci dessus, non, il faut filtrer sur la 2ème valeur

Merci à tous

=CHOISIRLIGNES(GROUPER.PAR(Tableau1[[critères]:[art]];Tableau1[nb];SOMME;;0;-3;Tableau1[critères]=M2);2)

Daniel

Je crois bien que c'est le résultat escompté !

Je mets ici la solution pour mon résultat voulu 2 :

=CHOISIRCOLS(CHOISIRLIGNES(GROUPER.PAR(Tableau1[[critères]:[art]];Tableau1[nb];SOMME;;0;-3;Tableau1[critères]=N2);2);2)

@JFL : il suffit donc d'englober la fonction dans CHOISIRCOLS et/ou CHOISIRLIGNES.

Merci à vous tous !

Bonsoir à tous !

Version "ancienne" amendée....

"

L'article du critère A avec la 2ème plus grosse somme de NB

Elle est ou, la premiere ?

Crdlmt

RE DjiDji,

Le tableau source filtré :

image

On cherche parmi les articles du critère A celui dont la somme de nb arrive en seconde position.

Ta formule retourne l'article 2 (ok) mais avec nb = 457. Elle omet donc le regroupement par article.

Le 1er est l'article 4 avec 655, le second l'article 2 avec 457+50 = 507 etc...

Merci pour la contribution

@JFL : voilà, parfait ! mais la fonction GROUPER.PAR est une tuerie

Bonsoir à tous de nouveau !

@JFL : voilà, parfait ! mais la fonction GROUPER.PAR est une tuerie

Il me tarde d'apprivoiser cette nouvelle fonction .....

Du Power Query sans Power Query

Rechercher des sujets similaires à "filtre regroupement donnees fonctions office 365"