Huomautus
Tämä on yksi artikkelisarjasta, joka sisältää yksityiskohtaiset ratkaisut, jotka lähetettiin Podcast 2316 -haasteeseen.
Vaikka Power Query -rajapinta on erittäin tehokas, niillä, jotka voivat ylittää käyttöliittymän, on supervoimia. Frank Tonsen lähetti tämän ratkaisun. Poimitaan siitä kohdasta, jossa tiedot näyttävät tältä:

Tämän jälkeen Frank koodaa Table.Split-määritelmän, että joka viiden tietueen tulee olla uusi taulukko.

Sieltä Table.FromList ja paljon muuta. Tässä vaiheessa voit napsauttaa mitä tahansa taulukon solua ja nähdä taulukon tiedot. Tässä on toinen taulukon solu.

Tässä on Frankin koodi:
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
Goodly from YouTube jakoi myös videon mukautetulla M-ratkaisulla, jotta kaikki sarakkeet, jotka alkavat "Työntekijä", tunnistetaan dynaamisesti. Vaikka tämä ei toimisi tosielämässä, kun työntekijöille annetaan nimi Andy, Betty, Charlie, se on hieno video: https://www.youtube.com/watch?v=xamU5QLNiew.
Palaa Podcast 2316 -haasteen pääsivulle.
Lue sarjan seuraava artikkeli: Power Query: Bill Szyszin maailma.