Merk
Dette er en av en serie artikler som beskriver løsninger som er sendt inn for Podcast 2316-utfordringen.
Mens Power Query-grensesnittet er veldig kraftig, har de som kan gå utover grensesnittet superkrefter. Frank Tonsen sendte inn denne løsningen. La oss hente på det punktet hvor dataene ser slik ut:

Frank koder deretter en Table.Split, og spesifiserer at hver femte poster skal være en ny tabell.

Derfra, Table.FromList og mer. På det tidspunktet kan du klikke på en hvilken som helst tabellcelle og se dataene i den tabellen. Her er den andre tabellcellen.

Her er Frank sin kode:
let Source = Excel.CurrentWorkbook()((Name="UglyData"))(Content), RemovedTotals = Table.RemoveColumns(Source,("Column2", "Column3", "Column4", "Column5", "Column6")), TransposedTable = Table.Transpose(RemovedTotals), PromotedHeaders = Table.PromoteHeaders(TransposedTable, (PromoteAllScalars=true)), SplittedTable = Table.Split(PromotedHeaders,5), TableFromList = Table.FromList(SplittedTable, Splitter.SplitByNothing(), null, null, ExtraValues.Error), AddedColumn1 = Table.AddColumn(TableFromList, "Column2", each Table.PromoteHeaders(Table.Transpose(Table.DemoteHeaders((Column1))))), AddedColumn2 = Table.AddColumn(AddedColumn1, "Column3", each Table.AddColumn((Column2), "Employee", (x) => Table.ColumnNames((Column2))(1))), AddedColumn3 = Table.AddColumn(AddedColumn2, "Column4", each Table.RenameColumns((Column3), (Table.ColumnNames((Column3))(1), "Total"))), Combined = Table.Combine(AddedColumn3(Column4)), ReorderedColumns = Table.ReorderColumns(Combined,("Category Description", "Employee", "Q1", "Q2", "Q3", "Q4", "Total")), ChangedType = Table.TransformColumnTypes(ReorderedColumns,(("Category Description", type text), ("Employee", type text), ("Q1", type number), ("Q2", type number), ("Q3", type number), ("Q4", type number), ("Total", type number))) in ChangedType
Godt fra YouTube delte også en video med en tilpasset M-løsning for dynamisk å identifisere alle kolonnene som starter med "Ansatt". Selv om dette ikke ville fungere i det virkelige liv når ansatte heter Andy, Betty, Charlie, er det en kul video: https://www.youtube.com/watch?v=xamU5QLNiew.
Gå tilbake til hovedsiden for Podcast 2316-utfordringen.
Les neste artikkel i denne serien: Power Query: The World of Bill Szysz.