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
8
Affichages
358
Réponses
7
Affichages
482

Statistiques des forums

Discussions
315 087
Messages
2 116 084
Membres
112 655
dernier inscrit
fannycordi