Microsoft 365 Fusionner deux tableaux croisés dynamiques avec Power Query

iliess

XLDnaute Occasionnel
Bonjour
SVP, je cherche comment fusionner deux tableaux croisés dynamiques avec Power Query.
Salutation, cordialement

Voici mon fichier
 

Pièces jointes

  • fusion Tableau croisé dynamique.xlsx
    128.2 KB · Affichages: 8
Solution
Bonjour iliess, goube, le forum,

Ci-dessous une autre proposition basée sur ton fichier du post #1.

PowerQuery:
let
    SourceTypeA = Table.AddColumn(Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content], "Type", each "Type A", type text),
    SourceTypeB = Table.AddColumn(Excel.CurrentWorkbook(){[Name="Tableau2"]}[Content], "Type", each "Type B", type text),
    CumulSources = SourceTypeA & SourceTypeB,
    CleanMontants = Table.TransformColumns(CumulSources,List.Transform({"DEBIT", "CREDIT"}, each {_, (val) => if val = null then 0 else Number.From(val), type number})),
    GroupByClientType = Table.Group(CleanMontants, {"Client", "Type"}, {{"Montant", each List.Sum([CREDIT])-List.Sum([DEBIT]), type number}}),
    PivotTypeColumns = Table.Pivot(GroupByClientType...

mromain

XLDnaute Barbatruc
Bonjour iliess, goube, le forum,

Ci-dessous une autre proposition basée sur ton fichier du post #1.

PowerQuery:
let
    SourceTypeA = Table.AddColumn(Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content], "Type", each "Type A", type text),
    SourceTypeB = Table.AddColumn(Excel.CurrentWorkbook(){[Name="Tableau2"]}[Content], "Type", each "Type B", type text),
    CumulSources = SourceTypeA & SourceTypeB,
    CleanMontants = Table.TransformColumns(CumulSources,List.Transform({"DEBIT", "CREDIT"}, each {_, (val) => if val = null then 0 else Number.From(val), type number})),
    GroupByClientType = Table.Group(CleanMontants, {"Client", "Type"}, {{"Montant", each List.Sum([CREDIT])-List.Sum([DEBIT]), type number}}),
    PivotTypeColumns = Table.Pivot(GroupByClientType, List.Distinct(GroupByClientType[Type]), "Type", "Montant", each if List.Sum(_)=null then 0 else List.Sum(_)),
    AddColumnSolde = Table.AddColumn(PivotTypeColumns, "Solde", each [Type B]-[Type A], type number)
in
    AddColumnSolde

A+
 

Discussions similaires

Réponses
4
Affichages
154
Réponses
7
Affichages
305

Statistiques des forums

Discussions
312 247
Messages
2 086 591
Membres
103 248
dernier inscrit
Happycat