Jõupäring: mitme identse päisega tegelemine - Exceli näpunäited

Lang L: none (table-of-contents)

Märge

See on üks artiklite seeria, mis kirjeldab üksikasjalikult Podcast 2316 väljakutsele saadetud lahendusi.

Oma algses andmete kujundamise probleemis sattusin probleemile protsessi alguses väga varakult. Sissetulevatel andmetel pidi olema palju veerge pealkirjaga Q1.

Palju veerge

Oma lahenduses lõin nimega vahemiku “UglyData” ja importisin selle Power Query'sse. See viis Power Query õnnetu tulemuseni, kui mu veerud nimetati ümber Q1_1.

Nimetati veerud ümber

Hiljem, pärast pööramist, pidin nendest päistest välja võtma just vasakule jäänud kaks tähemärki.

Sellele probleemile oli kolm eraldi lahendust:

  • Wyn Hopkins ja alandamise päised
  • MF Wong ja tühjendage ruut Minu tabelil on päised (soovitas ka Peter Bartholomew)
  • Jason M ja kustutage lihtsalt reklaamitud päised (soovitanud ka Ondřej Malinský ja Exceli MVP John MacDougall)

Esimene uuendus oli Wyn Hopkinsilt Access Analyticus. Nimetatud vahemiku asemel teisendas Wyn andmed tabeliks, kasutades klahvikombinatsiooni Ctrl + T. Sel hetkel tehti pealkirjade kahjustamine, kuna Excel teisendas pealkirjad järgmisteks:

Teisendatud tabeliks: Ctrl + T

Kui Wyn viis andmed Power Query'sse, avas ta seejärel rippmenüü Kasuta esimest rida päistena ja valis Esimese reana päiste kasutamine. Ma ei saanud kunagi aru, et see seal on. See loob sammu nimega Table.DemoteHeaders.

Esimese reana kasutage päiseid

Kuid isegi Wyni täiustades peaks ta hiljem ikkagi kaks esimest tähemärki nendest päistest välja võtma.

Teine uuendus on MF Wongi tehnika. Kui ta tabeli lõi, märkis ta valiku Minu tabelil on päised!

Minu tabelis on päised

See tagab, et Excel jätab mitu Q1 päist rahule ja pole vaja täiendavat järelliidet hiljem välja tõmmata.

Mitu Q1 päist

Ma saan aru, et laagris "Ma armastan laudu" on inimesi. MF Wongi video demonstreeris, kuidas ta saaks andmetest paremale lisada uusi töötajaid ja tabel laieneb automaatselt. Tabelite kasutamiseks on palju häid põhjuseid.

Kuna mulle aga meeldivad vahesummad, kohandatud vaated ja filtreerimine valiku järgi, ei taha ma tabeleid kasutada. Niisiis, ma hindan Jason M. lahendust. Ta hoidis andmeid UglyData nimetatud vahemikuna. Niipea kui ta andmed Power Query'sse importis, kustutas ta need kaks sammu:

Kustutatud sammud

Nüüd, kui andmed on lihtsalt 1. reas, pole vaeva, et oleks palju veerge, mida nimetatakse Q1-ks.

Paljud Q1 veerud

Siin on Wyn Hopkini kood, mis näitab DemotedHeadersit:

let Source = Excel.CurrentWorkbook()((Name="Table1"))(Content), #"Demoted Headers1" = Table.DemoteHeaders(Source), #"Transposed Table1" = Table.Transpose(#"Demoted Headers1"), #"Added Custom" = Table.AddColumn(#"Transposed Table1", "Custom", each if Text.Start((Column1),1) = "Q" then null else (Column1)), #"Filled Down" = Table.FillDown(#"Added Custom",("Custom")), #"Filtered Rows" = Table.SelectRows(#"Filled Down", each ((Custom) "Dept. Total")), #"Filtered Rows1" = Table.SelectRows(#"Filtered Rows", each not Text.StartsWith((Column1), "Employee")), #"Promoted Headers" = Table.PromoteHeaders(#"Filtered Rows1", (PromoteAllScalars=true)), #"Extracted First Characters" = Table.TransformColumns(#"Promoted Headers", (("Category Description", each Text.Start(_, 2), type text))), #"Reordered Columns" = Table.ReorderColumns(#"Extracted First Characters",("Category Description_1", "Category Description", "Administrative", "Holiday", "PTO/LOA/Jury Duty", "Project A", "Project B", "Project C")), #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Reordered Columns", ("Category Description_1", "Category Description"), "Attribute", "Value"), #"Reordered Columns1" = Table.ReorderColumns(#"Unpivoted Other Columns",("Category Description_1", "Attribute", "Category Description", "Value")), #"Pivoted Column" = Table.Pivot(#"Reordered Columns1", List.Distinct(#"Reordered Columns1"(#"Category Description")), "Category Description", "Value", List.Sum), #"Reordered Columns2" = Table.ReorderColumns(#"Pivoted Column",("Attribute", "Category Description_1", "Q1", "Q2", "Q3", "Q4")), #"Renamed Columns" = Table.RenameColumns(#"Reordered Columns2",(("Attribute", "Cat Deasc"), ("Category Description_1", "Emp Name"))), #"Changed Type" = Table.TransformColumnTypes(#"Renamed Columns",(("Emp Name", type text), ("Q1", Int64.Type), ("Q2", Int64.Type), ("Q3", Int64.Type), ("Q4", Int64.Type))), #"Inserted Sum" = Table.AddColumn(#"Changed Type", "Total", each List.Sum(((Q1), (Q2), (Q3), (Q4))), Int64.Type) in #"Inserted Sum"

Naaske Podcast 2316 väljakutse avalehele.

Lugege selle sarja järgmist artiklit: Power Query: kustutage see, kustutage need või kustutage midagi ?.

Huvitavad Artiklid...