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+
 

Statistiques des forums

Discussions
312 347
Messages
2 087 504
Membres
103 565
dernier inscrit
Fabien78