Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Tässä opetusohjelmassa tutkimme mielenkiintoista kysymystä, joka esitettiinkuinka dynaamisesti yhdistetään muuttuva määrä sarakkeita Power Query -taulukossa. Voit katsoa tämän opetusohjelman koko videon tämän blogin alaosasta.

Tämä skenaario käsittelee raakadatan vientiä, joka aiheuttaa tietojen leviämisen tuntemattomaan määrään vierekkäisiä sarakkeita. Kun katsot esimerkkiä, näet, että kuvaus on levinnyt sarakkeeseen 4 ja kuvaus 2 on jaettu kahteen vierekkäiseen sarakkeeseen. Mutta näin ei aina tule olemaan. Seuraavassa jaksossa tämä sarakkeiden määrä voi muuttua.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Ennen kuin siirrymme ratkaisuun, tutkitaan M-koodi, jonka Power Query luo, kun yhdistät sarakkeita.

Sisällysluettelo

Power Query Table M -koodi

Voit yhdistää sarakkeita parilla tavalla. Yksi on valita sekä kuvaussarake että painaa alas joko vaihtonäppäintä tai ohjausnäppäintä ja valita sitten myös sarake 4. Napsauta sitten hiiren kakkospainikkeella ja valitse Yhdistä sarakkeet .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Tai, päällä-välilehti, valitse yhdistä sarakkeet . Ja tämä valintaikkuna tulee näkyviin, jonka avulla voit valita Erottimen.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Valitse ponnahdusikkunasta Tab ja voit kirjoittaa uuden sarakkeen nimen. Tässä tapauksessa annoin sille nimeksi Kuvaus.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Kaavapalkissa näemme M-koodin, jonka tämä muunnosvaihe on luonut.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Jos kaavapalkki ei näy näytölläsi, siirry Näytä-välilehteen ja ota se käyttöön.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Joten toiminto, jota Power Query käyttää sarakkeiden yhdistämiseen, on Table.CombinedColumns . Ensimmäinen tarvittava parametri on taulukko. Koodimme edellinen vaihe palauttaa kyseisen taulukon, joten Sovelletut vaiheet -kohdassa näet, että tätä kutsutaan lähdekoodiksi .

Sitten se koodasi sarakkeiden nimet luetteloon. Tässä näet luettelon alustustoiminnot ja tekstin sisäisten arvojen välissä sarakkeen nimen kuvauksen ja sarakkeen nimen sarakkeen 4. Sitten se kutsuu toista M-funktiota yhdistämään näiden sarakkeiden tekstiarvot.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Ja lopuksi se välittää uuden sarakkeen nimen tekstinä, jotta voimme säätää sitä.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Joten jos haluamme tämän funktion yhdistävän dynaamisesti muuttuvan määrän sarakkeita, meidän on muutettava sitä toista parametrin arvoa, joka sisältää nyt luettelon kovakoodatuista sarakkeiden nimistä.

Muuttuvan sarakkeiden määrän yhdistäminen Power Query -taulukossa

Palaan takaisin raakadatakyselyyn, ja jos tarkastelemme sarakkeiden nimiä tarkemmin, huomaamme, että jokainen vuotosarake on anonyymi. Niillä ei ole erillisiä nimiä, mutta ne kaikki alkavat tekstisarakkeella, jota seuraa numero. Katsotaan voimmeko käyttää sitä. Ensin luon viitteen napsauttamalla tätä hiiren kakkospainikkeella ja valitsemalla Viite .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Ja saadakseni sarakkeiden nimet kaavapalkkiin, voin lisätä Table.ColumnNames -tiedoston . Tämä funktio palauttaa luettelon, jossa on kaikki kyseisen taulukon sarakkeiden nimet. Muutetaan tämä takaisin taulukoksi napsauttamalla To Table .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Napsauta tässä ponnahdusikkunassa OK.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Valitse sitten Lisää sarake -välilehdessä Muoto ja sitten Leikkaa .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Tämä ei ole muutos, jonka haluan suorittaa, mutta se tuottaa suurimman osan M-koodista minulle. Minun ei tarvitse tehdä muuta kuin.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Joten kaavapalkin sisällä Text.Trim sijaan voimme sanoa, jos Text.StartsWith , ja osoittaa sen sitten sarakkeeseen 1 , ja kopioin sen välittömästi. Se haluaa sen tekstin, jota etsimme, joten siitä tulee sarake. Joten jos se alkaa tekstisarakkeella, haluamme "nolla" – kaikelle muulle haluamme sen, mikä on sarakkeessa 1. Voimme myös nimetä sarakkeen uudelleen, joten kutsutaan kaavapalkin sisällä Trim sijaan sitä GroupColumniksi .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Nyt meidän tarvitsee vain täyttää ne näillä arvoilla. Joten napsautan otsikkoani hiiren kakkospainikkeella, valitsen Täytä ja alas .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Joten kun seuraavan kerran tietoja tulee ja sarakkeiden määrä muuttuu, tämä ryhmä poimii ne automaattisesti.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Nimetään tämä kysely uudelleen, kutsun sitä sarakeryhmiksi.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Varmistetaan, että sen lataus on poistettu käytöstä, koska tämä on vain tukikysely.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Voin viitata tähän tukikyselyyn ja nimeän tämän uudelleen myöhemmin. Jätetään se toistaiseksi. Joten jos muistat, aloitimme yhdistämällä kaksi saraketta ja loimme kovakoodatun luettelon sarakkeiden nimistä , mutta nyt voimme suodattaa kuvauksen mukaan ryhmäsarakkeessamme .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Joten jos teemme tämän suodattimen sarakkeen 1 kuvaukseen, saamme sarakkeet, jotka täyttävät kriteerit.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Tämä on kuitenkin taulukko eikä luettelo.koska meidän on sisällytettävä nämä sarakkeet yhdistämistoimintoomme. Voit tehdä sen napsauttamalla hiiren kakkospainikkeella sarakkeen 1 otsikkoa ja valitsemalla Poraa alas .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Ja nyt saamme listan. Joten annetaan tälle kyselylle oikea nimi ( ListDescr ) ja tarkistetaan, onko se poistettu käytöstä.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Nyt voimme palata tuloskyselyymme ja korvata tämän toisen argumentin täällä dynaamisella luettelollamme. Joten tässä voimme viitata ListDescr -tiedostoomme .

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Toistetaan tämä myös Kuvaus 2:lle. Siirryn ColumnGroups-kyselyyn. Luon toisen viitteen ja valitsen tarvitsemani sarakkeet. Sitten suodatan Kuvauksen 2, joka palauttaa nämä kolme saraketta. Napsautan otsikkoani hiiren kakkospainikkeella ja valitsen Drill Down ja nimeän myös tämän kyselyn uudelleen ( ListDescr2 ).

Palaan sitten Tuloskyselyyn, valitsen Kuvaus2-sarakkeen ja painan joko vaihto- tai ohjausnäppäintä valitaksesi myös seuraavan sarakkeen (sarake2). Napsautan otsikkoa hiiren kakkospainikkeella ja valitsen.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Valitsen ponnahdusikkunassa erottimeksi Sarkaimen ja kutsun tätä Kuvaus2:ksi.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti

Muutan vain sarakkeen nimen täällä kaavapalkissa. Muutan myös tuon kovakoodatun luettelon juuri luomastamme luettelosta. Ja nyt, kuten näet, tämä on myös poiminut sarakkeen 8, jonka olemme aiemmin jättäneet pois.

Power Query -taulukon sarakkeiden yhdistäminen dynaamisesti




Johtopäätös

Tässä blogissa olen näyttänyt sinulle, kuinka voit käyttää M-koodeja Power Queryssa sarakkeiden dynaamiseen yhdistämiseen. Se ei ole vaikeaa, kunhan tiedät, miten Power Query toimii ja mitä M-koodeja tulee käyttää.

Toivottavasti olet nauttinut tästä. Katso alla olevista linkeistä lisää aiheeseen liittyvää sisältöä.

Kaikki parhaat!

Melissa


Päivämäärätaulukon luominen LuckyTemplatesissa

Päivämäärätaulukon luominen LuckyTemplatesissa

Ota selvää, miksi LuckyTemplatesissa on tärkeää pitää oma päivämäärätaulukko ja opi nopein ja tehokkain tapa tehdä se.

LuckyTemplates mobiiliraportointivinkkejä ja -tekniikoita

LuckyTemplates mobiiliraportointivinkkejä ja -tekniikoita

Tämä lyhyt opetusohjelma korostaa LuckyTemplates-mobiiliraportointiominaisuutta. Näytän sinulle, kuinka voit kehittää raportteja tehokkaasti mobiililaitteille.

Ammattimainen palveluanalyysiraportit LuckyTemplatesissa

Ammattimainen palveluanalyysiraportit LuckyTemplatesissa

Tässä LuckyTemplates Showcase -esittelyssä käymme läpi raportteja, jotka näyttävät ammattitaitoisen palveluanalytiikan yritykseltä, jolla on useita sopimuksia ja asiakkaiden sitoumuksia.

Microsoft Power Platform -päivitykset | Microsoft Ignite 2021

Microsoft Power Platform -päivitykset | Microsoft Ignite 2021

Käy läpi tärkeimmät Power Appsin ja Power Automaten päivitykset sekä niiden edut ja vaikutukset Microsoft Power Platformiin.

Yleiset SQL-funktiot: Yleiskatsaus

Yleiset SQL-funktiot: Yleiskatsaus

Tutustu joihinkin yleisiin SQL-toimintoihin, joita voimme käyttää, kuten merkkijono, päivämäärä ja joitain lisätoimintoja tietojen käsittelyyn tai käsittelyyn.

LuckyTemplates-mallin luominen: opas ja vinkkejä

LuckyTemplates-mallin luominen: opas ja vinkkejä

Tässä opetusohjelmassa opit luomaan täydellisen LuckyTemplates-mallin, joka on määritetty tarpeidesi ja mieltymystesi mukaan.

Kenttäparametrit ja pienet kertoimet LuckyTemplatesissa

Kenttäparametrit ja pienet kertoimet LuckyTemplatesissa

Tässä blogissa esittelemme, kuinka kerrostat kenttäparametreja pienillä kerroilla uskomattoman hyödyllisten näkemysten ja visuaalien luomiseksi.

LuckyTemplates-sijoitus ja mukautettu ryhmittely

LuckyTemplates-sijoitus ja mukautettu ryhmittely

Tässä blogissa opit käyttämään LuckyTemplates-sijoitus- ja mukautettuja ryhmittelyominaisuuksia näytetietojen segmentoimiseen ja luokitteluun kriteerien mukaan.

LuckyTemplatesissa näytetään vain tiettyyn päivämäärään asti kumulatiivinen kokonaissumma

LuckyTemplatesissa näytetään vain tiettyyn päivämäärään asti kumulatiivinen kokonaissumma

Tässä opetusohjelmassa käsittelen tiettyä tekniikkaa, jolla voit näyttää kumulatiivisen kokonaissumman LuckyTemplates-visuaaleissasi vain tiettyyn päivämäärään asti.

Bullet Charts: Kehittyneet mukautetut visuaalit LuckyTemplatesille

Bullet Charts: Kehittyneet mukautetut visuaalit LuckyTemplatesille

Opi luomaan ja mukauttamaan Bullet-kaavioita LuckyTemplatesissa, joita käytetään pääasiassa suorituskyvyn mittaamiseen suhteessa tavoitteeseen tai edellisiin vuosiin.