XL 2019 Tableau Power Query

JHA

XLDnaute Barbatruc
Bonjour à tous,

Avez-vous la solution pour réaliser le tableau de droite sous Power Query, malgré mes essais je ne trouve pas la bonne solution.
Il faut que les séries se suivent par site.

Edit: changement fichier

JHA
 

Pièces jointes

  • tableau sous PQ.xlsx
    22.9 KB · Affichages: 14
Dernière édition:

Lolote83

XLDnaute Barbatruc
Bonjour @JHA,
Ne maitrisant très très très très peu PowerQuery, je me suis mis sur le sujet afin de comprendre si quelqu'un venait à répondre.
En l'absence actuelle de réponse, voici ma proposition en VBA.
Un peu tirée par les cheveux mais les deux tableaux finaux sont identiques.
@+ Lolote83
 

Pièces jointes

  • Copie de JHA - Tableau sous PQ.xlsm
    32.4 KB · Affichages: 3

alexga78

XLDnaute Occasionnel
Bonjour JHA, JFL_Excel, Lolote83, le forum,

j'arrive trop tard ... ma proposition tout de même.


PowerQuery:
let
Source = Excel.CurrentWorkbook(){[Name="Base"]}[Content],
    ColName = Table.ColumnNames(Source),
    #"Grouped Rows" = Table.Group(Source, {"SITE"}, {{"AllData", each Table.AddIndexColumn(_,"Index",0)}}),
    #"Added Custom" = Table.Combine(Table.AddColumn(#"Grouped Rows", "Custom", each let
alldata = [AllData],
Next =  Table.AddColumn(alldata, "Next", each try Table.Column(alldata, ColName{5}){[Index] + 1} otherwise Table.Column(alldata, ColName{5}){[Index]}),
Result = Table.AddColumn(Next, "List", each {Table.Column(Next, ColName{5}){[Index]}..Table.Column(Next, "Next"){[Index]}-1} )
in Result)[Custom]),
    Result = let fct = (fnRec as record) as list => List.Transform({ColName{5}}, each {_, each if List.Count(fnRec[List]) > 0 then fnRec[List] else {_} }) in Table.ExpandListColumn(Table.SelectColumns(Table.FromRecords(Table.TransformRows(#"Added Custom", (Rec) => Record.TransformFields(Rec, fct(Rec)))), ColName), ColName{5})
in
    Result

Bonne fin de journée
 

Discussions similaires

Réponses
14
Affichages
341

Statistiques des forums

Discussions
314 422
Messages
2 109 447
Membres
110 482
dernier inscrit
ilyxxxh