Composite Solution to Podcast 2316 Challenge - Excel-vinkit

Huomautus

Tämä on yksi artikkelisarjasta, joka sisältää yksityiskohtaiset ratkaisut, jotka lähetettiin Podcast 2316 -haasteeseen.

Tutkittuani kaikki katsojien lähettämät ideat olen valinnut suosikkitekniikkani jokaisesta videosta. Lopullisessa ratkaisussa käytetään näitä vaiheita:

  • Hanki tietoja nimetyiltä alueilta
  • Poista kaksi ylimääräistä vaihetta, jotka on lisätty Mainosta otsikot ja Muuta tyyppiä. Tämä estää päätelaitteen rikkomisen neljänneksistä. Kiitos Jason M: lle, Ondřej Malinskýlle ja Peter Bartholomewille tästä ideasta.
  • Transponoi
  • Mainosta otsikoita
  • Poista, Ylimmät rivit, Ylin 5 riviä. Mukava temppu MF Wongilta.
  • Korvaa Q1 sanalla _Q1. Toista vielä kolme neljäsosaa. Kiitos Jonathan Cooper.
  • Jaettu erotinmerkillä _. Tämä hämmästyttävä vaihe pitää nimet yhdessä sarakkeessa ja siirtää neljännekset seuraavaan sarakkeeseen. Ehdotti Fowmy, täydentänyt Jonathan Cooper.
  • (Ei askel!) Siirry kaavapalkkiin ja nimeä sarakkeet uudelleen työntekijöiksi ja vuosineljänneksiksi. Kiitos Josh Johnson
  • Korvaa työntekijän sarakkeessa mitään nollalla
  • Täytä
  • Muuta Neliö -sarakkeessa nolla arvoksi Yhteensä. Tämän idean Michael Karpfen
  • Poista muiden sarakkeiden kääntö. Nimeä attribuutti uudelleen luokkaan kaavapalkissa
  • Pivot-korttelit
  • Siirrä sarake yhteensä loppuun

Tässä on viimeinen koodini:

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"

Kaikki näissä artikkeleissa tai videoissa mainitut voittaa Excel Guru -korjaustiedoston. Olen jo lähettänyt useita. Jos et saa sitä, jätä kommentti alla olevaan videoon.

Excel Guru -korjaus

Voittaja on Bill Szysz. Hänen nelirivinen M-ratkaisu kertoo minulle, että minun on opittava paljon enemmän Power Querystä! Katso hänen ratkaisunsa Power Query: Bill Szyszin maailma.

Katso video

Tässä on viimeinen videoni, joka käsittelee ratkaisuja ja näyttää lopullisen ratkaisun.

Palaa Podcast 2316 -haasteen pääsivulle.

Mielenkiintoisia artikkeleita...