Kuidas Power Querys pesastatud tabeleid õigesti laiendada

Sisu

Oletame, et meil on mitme nutika tabeliga Exceli fail:

Kuidas Power Querys pesastatud tabeleid õigesti laiendada

Kui laadite need tabelid Power Querysse tavapärasel viisil, kasutades käsku Andmed – hangi andmed – failist – raamatust (Andmed — hangi andmed — failist — töövihikust), siis saame midagi sellist:

Kuidas Power Querys pesastatud tabeleid õigesti laiendada

Pilt on minu arvates paljudele Power Query kasutajatele tuttav. Sarnaseid pesastatud tabeleid saab näha pärast päringute kombineerimist (a la VLOOKUP), rühmitamist (käsk Grupi poolt tab Transformation), importides kõik failid antud kaustast jne.

Järgmine loogiline samm selles olukorras on tavaliselt kõigi pesastatud tabelite korraga laiendamine – kasutades veeru päises topeltnooltega nuppu kuupäev:

Kuidas Power Querys pesastatud tabeleid õigesti laiendada

Selle tulemusel saame kõikidest tabelitest kõigist ridadest koosneva komplekti ühtseks tervikuks. Kõik on hea, lihtne ja selge. 

Kujutage nüüd ette, et lähtetabelitesse lisati uus veerg (Allahindlus) ja/või üks olemasolevatest (Linn) kustutati:

Kuidas Power Querys pesastatud tabeleid õigesti laiendada

Siis tagastab meie värskendusjärgne päring mitte nii ilusa pildi - allahindlust ei ilmunud ja linna veerg muutus tühjaks, kuid ei kadunud:

Kuidas Power Querys pesastatud tabeleid õigesti laiendada

Ja seda on lihtne mõista – valemiribal on selgelt näha, et laiendatud veergude nimed on funktsiooni argumentides kõvasti kodeeritud Tabel.Laienda tabeliveerg loenditena lokkis sulgudes.

Sellest probleemist mööda pääsemine on lihtne. Esiteks saame funktsiooni kasutades mis tahes (näiteks esimese) tabeli päisest veergude nimed Tabel.Veerunimed. See näeb välja selline:

Kuidas Power Querys pesastatud tabeleid õigesti laiendada

siin:

  • #"Teised veerud eemaldatud" – eelmise sammu nimi, kust andmed võtame
  • 0 {} – tabeli number, millest päise välja võtame (nullist lugedes, st 0 on esimene tabel)
  • [Andmed] – eelmise etapi veeru nimi, kus asuvad laiendatud tabelid

Jääb üle funktsiooniga asendada valemiribal saadud konstruktsioon Tabel.Laienda tabeliveerg tabelite laiendamise etapis kõvakodeeritud loendite asemel. See kõik peaks lõpuks välja nägema nii:

Kuidas Power Querys pesastatud tabeleid õigesti laiendada

See on kõik. Ja lähteandmete muutumisel pole enam probleeme pesastatud tabelite laiendamisega.

  • Mitmevorminguliste tabelite koostamine ühelt lehelt rakenduses Power Query
  • Koostage mitmest Exceli failist erinevate päistega tabeleid
  • Andmete kogumine raamatu kõigilt lehtedelt ühte tabelisse

 

Jäta vastus