Kaip teisingai išplėsti įdėtas lenteles „Power Query“.

Turinys

Tarkime, kad turime „Excel“ failą su keliomis išmaniosiomis lentelėmis:

Kaip teisingai išplėsti įdėtas lenteles „Power Query“.

Jei šias lenteles įkeliate į „Power Query“ standartiniu būdu naudodami komandą Duomenys – Gauti duomenis – Iš failo – Iš knygos (Duomenys – gauti duomenis – iš failo – iš darbaknygės), tada gauname kažką panašaus:

Kaip teisingai išplėsti įdėtas lenteles „Power Query“.

Manau, kad paveikslėlis yra žinomas daugeliui „Power Query“ vartotojų. Panašias įdėtas lenteles galima pamatyti sujungus užklausas (a la VLOOKUP), sugrupavus (komandą Grupuoti pagal kortelė Transformacija), importuojant visus failus iš nurodyto aplanko ir kt.

Kitas logiškas žingsnis šioje situacijoje paprastai yra išplėsti visas įdėtas lenteles vienu metu – naudojant mygtuką su dvigubomis rodyklėmis stulpelio antraštėje. Duomenys:

Kaip teisingai išplėsti įdėtas lenteles „Power Query“.

Dėl to gauname visų lentelių visų eilučių rinkinį į vieną visumą. Viskas gerai, paprasta ir aišku. 

Dabar įsivaizduokite, kad šaltinio lentelėse buvo pridėtas naujas stulpelis (Nuolaida) ir (arba) buvo ištrintas vienas iš esamų (Miestas):

Kaip teisingai išplėsti įdėtas lenteles „Power Query“.

Tada mūsų prašymas po atnaujinimo grąžins ne tokį gražų vaizdą – nuolaida neatsirado, o miesto stulpelis ištuštėjo, bet nedingo:

Kaip teisingai išplėsti įdėtas lenteles „Power Query“.

Ir nesunku suprasti kodėl – formulės juostoje aiškiai matote, kad išplėstų stulpelių pavadinimai yra užkoduoti funkcijos argumentuose Table.ExpandTableColumn kaip sąrašai skliausteliuose.

Apeiti šią problemą lengva. Pirmiausia, naudodami funkciją, gaukime stulpelių pavadinimus iš bet kurios (pavyzdžiui, pirmosios) lentelės antraštės Lentelė.Stulpelių pavadinimai. Tai atrodys taip:

Kaip teisingai išplėsti įdėtas lenteles „Power Query“.

Čia:

  • #„Kiti stulpeliai pašalinti“ – ankstesnio žingsnio pavadinimas, iš kurio paimame duomenis
  • 0 {} – lentelės, iš kurios išgauname antraštę, numeris (skaičiuojant nuo nulio, ty 0 yra pirmoji lentelė)
  • [Duomenys] – stulpelio pavadinimas ankstesniame žingsnyje, kuriame yra išplėstos lentelės

Belieka formulės juostoje gautą konstrukciją pakeisti funkcija Table.ExpandTableColumn plečiant lenteles, o ne užkoduotus sąrašus. Pabaigoje viskas turėtų atrodyti taip:

Kaip teisingai išplėsti įdėtas lenteles „Power Query“.

Tai viskas. Ir nebebus problemų plečiant įdėtas lenteles, kai pasikeičia šaltinio duomenys.

  • Kelių formatų lentelių kūrimas iš vieno lapo naudojant „Power Query“.
  • Kurkite lenteles su skirtingomis antraštėmis iš kelių „Excel“ failų
  • Duomenų surinkimas iš visų knygos lapų į vieną lentelę

 

Palikti atsakymą