Kuasa Kuasa: Di Luar Antara Muka Pengguna: Jadual. Split dan Banyak Lagi - Petua Excel

Catatan

Ini adalah salah satu rangkaian artikel yang memperincikan penyelesaian yang dihantar untuk cabaran Podcast 2316.

Walaupun antara muka Power Query sangat kuat, mereka yang dapat melampaui antara muka mempunyai kekuatan super. Frank Tonsen menghantar penyelesaian ini. Mari kita lihat di mana data kelihatan seperti ini:

Data dalam Kuasa Kuasa

Frank kemudian mengkod Jadual. Split, menyatakan bahawa setiap 5 rekod harus menjadi jadual baru.

Jadual. Split

Dari sana, Table.FromList dan banyak lagi. Pada ketika itu, anda boleh mengklik mana-mana sel Jadual dan melihat data dalam jadual tersebut. Berikut adalah sel Jadual kedua.

Jadual.FromList

Inilah kod Frank:

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

Baik dari YouTube juga berkongsi video dengan penyelesaian M khusus untuk mengenal pasti semua lajur yang dimulakan dengan "Karyawan" secara dinamis. Walaupun ini tidak akan berfungsi dalam kehidupan nyata apabila pekerja bernama Andy, Betty, Charlie, itu adalah video yang menarik: https://www.youtube.com/watch?v=xamU5QLNiew.

Kembali ke halaman utama untuk cabaran Podcast 2316.

Baca artikel seterusnya dalam siri ini: Kuasa Kuasa: Dunia Bill Szysz.

Artikel menarik...