Microsoft 365 tableau avec données uniques et source d'un autre tableau

simsinaty

XLDnaute Nouveau
Bonjour à tous chers Excel Masters,

Je poste ce sujet pour le problème suivant : j'essaie de créer un tableau à partir de la fonction unique de deux colonnes d'un autre tableau et pour lequel je souhaite en plus rajouter un total. Regardez le fichier joint qui sera plus explicite je pense. Peu importe la solution du moment qu'elle ne passe pas par du VBA.... Le but étant que dès qu'une nouvelle valeur est rentrée dans le tableau d'origine, celle-ci se crée automatiquement dans le nouveau tableau.

Merci à vous pour vos retours !
 

Pièces jointes

  • fichier exemple.xlsx
    17.3 KB · Affichages: 14
Solution
Bonjour,

Deux propositions après avoir ôter l'espace en fin d'entête de la colonne "Département "

1 - par formule.

N'ayant pas 365 mais 2021 j'ai utiliser Filtre.XML mais vous vous pouvez utiliser Texte.Split et mettre des séparateurs de texte plus simple.
Les formules dynamiques de 365 et + ne peuvent pas être dans des tableaux structurés.

2 - par requête power query
cette proposition oblige à actualiser le tableau (click-droit) lorsque les données changent

Cordialement

[Edit] hello @chris
Oui, avec FRACTIONNER.TEXTE et non (split), c'est plus simple et direct :) Super
Sinon pour ceux que ça pourrait intéresser, la requête en 2 étapes seulement :
Source = Excel.CurrentWorkbook(){[Name="T_Datas"]}[Content],
Empilement =...

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Deux propositions après avoir ôter l'espace en fin d'entête de la colonne "Département "

1 - par formule.

N'ayant pas 365 mais 2021 j'ai utiliser Filtre.XML mais vous vous pouvez utiliser Texte.Split et mettre des séparateurs de texte plus simple.
Les formules dynamiques de 365 et + ne peuvent pas être dans des tableaux structurés.

2 - par requête power query
cette proposition oblige à actualiser le tableau (click-droit) lorsque les données changent

Cordialement

[Edit] hello @chris
Oui, avec FRACTIONNER.TEXTE et non (split), c'est plus simple et direct :) Super
Sinon pour ceux que ça pourrait intéresser, la requête en 2 étapes seulement :
Source = Excel.CurrentWorkbook(){[Name="T_Datas"]}[Content],
Empilement = #table({"Dep & société"}, List.Transform( List.RemoveNulls(List.Distinct( Source[Département] & {"Total A"} & List.Select(Source[Société],each _ <> "A"))),each {_}))
in
Empilement
[/Edit]
 

Pièces jointes

  • fichier exemple.xlsx
    25.8 KB · Affichages: 13
Dernière édition:

chris

XLDnaute Barbatruc
Bonjour

Pas très claire ta notion de total qui n'apparait que pour A

Par une unique formule on peut obtenir
1667843345725.png


VB:
=UNIQUE(TRANSPOSE(FRACTIONNER.TEXTE(JOINDRE.TEXTE("@";;Tableau1[[Département ]];Tableau1[Société]);"@")))
 

simsinaty

XLDnaute Nouveau
Bonjour,

Deux propositions après avoir ôter l'espace en fin d'entête de la colonne "Département "

1 - par formule.

N'ayant pas 365 mais 2021 j'ai utiliser Filtre.XML mais vous vous pouvez utiliser Texte.Split et mettre des séparateurs de texte plus simple.
Les formules dynamiques de 365 et + ne peuvent pas être dans des tableaux structurés.

2 - par requête power query
cette proposition oblige à actualiser le tableau (click-droit) lorsque les données changent

Cordialement

[Edit] hello @chris
Oui, avec FRACTIONNER.TEXTE et non (split), c'est plus simple et direct :) Super
Sinon pour ceux que ça pourrait intéresser, la requête en 2 étapes seulement :

[/Edit]
Hello, et merci pour cette réponse très claire. Du coup , que ferais-tu pour modifier ta formule en rajoutant le fractionner.Texte ? Merci !
 

chris

XLDnaute Barbatruc
Bonjour

Bizarre il y avait une réponse hier qui a disparu mais je l'avais copiée donc je la remets
(adapter le nom du tableau)
Je n'ai pas noté qui l'a postée

VB:
=LET(Table1;TableauS[[Département ]];Table2;TableauS[Société];UNIQUE(ASSEMB.V(FILTRE(Table1;Table1<>"");"Total A";FILTRE(Table2;Table2<>"A"))))
 

ALS35

XLDnaute Impliqué
Bonjour à tous,
Oui chris, c'est moi qui ai posté cette réponse hier mais je l'ai supprimée car ces formules dynamiques ne peuvent pas se mettre dans un tableau structuré et que j'ai cru comprendre que c'était un souhait du demandeur.
Bien cordialement
 

R@chid

XLDnaute Barbatruc
Supporter XLD
Re,
Je viens de me rendre compte simsinaty a choisi la réponse de l'ami Hasco
Bonjour,

Deux propositions après avoir ôter l'espace en fin d'entête de la colonne "Département "

1 - par formule.

N'ayant pas 365 mais 2021 j'ai utiliser Filtre.XML mais vous vous pouvez utiliser Texte.Split et mettre des séparateurs de texte plus simple.
Les formules dynamiques de 365 et + ne peuvent pas être dans des tableaux structurés.

2 - par requête power query
cette proposition oblige à actualiser le tableau (click-droit) lorsque les données changent

Cordialement

[Edit] hello @chris
Oui, avec FRACTIONNER.TEXTE et non (split), c'est plus simple et direct :) Super
Sinon pour ceux que ça pourrait intéresser, la requête en 2 étapes seulement :

[/Edit]
On peut l'écrire comme ça :
VB:
=LET(Col_Dprt;T_Datas[Département];Col_Sct;T_Datas[Société];Lst_1;UNIQUE(FILTRE(Col_Dprt;Col_Dprt<>""));Lst_2;UNIQUE(Col_Sct);ASSEMB.V(Lst_1;"Total "&PRENDRE(Lst_2;1);EXCLURE(Lst_2;1)))

Bien cordialement
 

Discussions similaires

Statistiques des forums

Discussions
315 096
Messages
2 116 183
Membres
112 677
dernier inscrit
Justine11