jegyzet
Ez egy olyan cikksorozat, amely a Podcast 2316 kihíváshoz elküldött megoldásokat részletezi.
Miután tanulmányoztam a nézők által küldött összes ötletet, mindegyik videóból kiválasztottam a kedvenc technikámat. A végső megoldásom a következő lépéseket használja:
- Adatok beszerzése a megnevezett tartományból
- Törölje a fejléc promóciója és a típus módosítása két új lépést. Ez megakadályozza, hogy az utótagot el kell szakítani a negyedekből. Köszönet Jason M-nek, Ondřej Malinský-nak és Peter Bartholomew-nak ezért az ötletért.
- Átültetni
- Fejlécek promóciója
- Eltávolítás, Felső sorok, Felső 5 sor. Szép trükk MF Wong-tól.
- Cserélje Q1-et _Q1-re. Ismételje meg további háromnegyedig. Köszönöm Jonathan Cooper.
- Felosztva határolóval a _-nál. Ez a csodálatos lépés a neveket egy oszlopban tartja, a negyedeket pedig a következő oszlopba mozgatja. Javasolta: Fowmy, Jonathan Cooper tökéletesítette.
- (Nem egy lépés!) Nyissa meg a képletsávot, és nevezze át az oszlopokat Alkalmazottnak és Negyednek. Köszönöm Josh Johnson
- Az Alkalmazott oszlopban ne cseréljen le semmit nullával
- Töltsd le
- A Negyed oszlopban állítsa a null értéket Összesen értékre. Michael Karpfen ötlete
- A többi oszlop kibontása. Átnevezheti a Kategória attribútumot a képletsávban
- Pivot negyedek
- Az Összes oszlop áthelyezése a végére
Itt van a végső kódom:
let Source = Excel.CurrentWorkbook()((Name="UglyData"))(Content), #"Transposed Table" = Table.Transpose(Source), #"Promoted Headers" = Table.PromoteHeaders(#"Transposed Table", (PromoteAllScalars=true)), #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",(("Category Description", type text), ("Administrative", type number), ("Holiday", Int64.Type), ("PTO/LOA/Jury Duty", Int64.Type), ("Project A", type number), ("Project B", type number), ("Project C", type number))), #"Removed Top Rows" = Table.Skip(#"Changed Type",5), #"Replaced Value" = Table.ReplaceValue(#"Removed Top Rows","Q1","_Q1",Replacer.ReplaceText,("Category Description")), #"Replaced Value1" = Table.ReplaceValue(#"Replaced Value","Q2","_Q2",Replacer.ReplaceText,("Category Description")), #"Replaced Value2" = Table.ReplaceValue(#"Replaced Value1","Q3","_Q3",Replacer.ReplaceText,("Category Description")), #"Replaced Value3" = Table.ReplaceValue(#"Replaced Value2","Q4","_Q4",Replacer.ReplaceText,("Category Description")), #"Split Column by Delimiter" = Table.SplitColumn(#"Replaced Value3", "Category Description", Splitter.SplitTextByDelimiter("_", QuoteStyle.Csv), ("Employee", "Qtr")), #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",(("Employee", type text), ("Qtr", type text))), #"Replaced Value4" = Table.ReplaceValue(#"Changed Type1","",null,Replacer.ReplaceValue,("Employee")), #"Filled Down" = Table.FillDown(#"Replaced Value4",("Employee")), #"Replaced Value5" = Table.ReplaceValue(#"Filled Down",null,"Total",Replacer.ReplaceValue,("Qtr")), #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Replaced Value5", ("Employee", "Qtr"), "Attribute", "Value"), #"Pivoted Column" = Table.Pivot(#"Unpivoted Other Columns", List.Distinct(#"Unpivoted Other Columns"(Qtr)), "Qtr", "Value", List.Sum), #"Reordered Columns" = Table.ReorderColumns(#"Pivoted Column",("Employee", "Attribute", "Q1", "Q2", "Q3", "Q4", "Total")) in #"Reordered Columns"
A cikkekben vagy a videókban említett mindenki elnyeri az Excel Guru javítást. Többet már kiküldtem. Ha nem kap ilyet, írjon megjegyzést az alábbi videóhoz.

Az összesített győztes Bill Szysz. Négysoros megoldása az M használatával azt mondja nekem, hogy sokkal többet kell megtudnom a Power Query-ről! Nézze meg megoldásait a Power Query-nél: Bill Szysz világa.
Videót nézni
Itt van az utolsó videóm, amely a megoldásokat tárgyalja és bemutatja a végső megoldást.
Térjen vissza a Podcast 2316 kihívás főoldalára.