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: 9
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
359
Réponses
14
Affichages
354

Statistiques des forums

Discussions
314 492
Messages
2 110 189
Membres
110 695
dernier inscrit
fabriceseka