Povedzme, že máme súbor Excel s niekoľkými inteligentnými tabuľkami:
Ak tieto tabuľky načítate do Power Query štandardným spôsobom pomocou príkazu Údaje – Získať údaje – Zo súboru – Z knihy (Údaje — Získať údaje — Zo súboru — Zo zošita), potom dostaneme niečo takéto:
Myslím, že obrázok je známy mnohým používateľom Power Query. Podobné vnorené tabuľky je možné vidieť po skombinovaní dopytov (a la VLOOKUP), zoskupení (príkaz Skupina podľa pútko Premena), importovanie všetkých súborov z daného priečinka atď.
Ďalším logickým krokom v tejto situácii je zvyčajne rozbalenie všetkých vnorených tabuliek naraz – pomocou tlačidla s dvojitými šípkami v hlavičke stĺpca dátum:
V dôsledku toho dostaneme zostavu všetkých riadkov zo všetkých tabuliek do jedného celku. Všetko je dobré, jednoduché a jasné.
Teraz si predstavte, že do zdrojových tabuliek bol pridaný nový stĺpec (Zľava) a/alebo bol vymazaný jeden z existujúcich stĺpcov (Mesto):
Potom naša požiadavka po aktualizácii vráti nie tak krásny obrázok - zľava sa nezobrazila a stĺpec mesta bol prázdny, ale nezmizol:
A je ľahké pochopiť prečo – na riadku vzorcov môžete jasne vidieť, že názvy rozšírených stĺpcov sú pevne zakódované v argumentoch funkcie Table.ExpandTableColumn ako zoznamy v zložených zátvorkách.
Obísť tento problém je jednoduché. Najprv získajme pomocou funkcie názvy stĺpcov z hlavičky ľubovoľnej (napríklad prvej) tabuľky Table.ColumnNames. Bude to vyzerať takto:
Tu:
- #”Iné stĺpce boli odstránené” – názov predchádzajúceho kroku, odkiaľ berieme údaje
- 0 {} – číslo tabuľky, z ktorej extrahujeme hlavičku (počítame od nuly, tj 0 je prvá tabuľka)
- [Údaje] – názov stĺpca v predchádzajúcom kroku, kde sa nachádzajú rozbalené tabuľky
Zostáva dosadiť konštrukciu získanú v riadku vzorcov do funkcie Table.ExpandTableColumn v kroku rozširovania tabuliek namiesto pevne zakódovaných zoznamov. Všetko by to nakoniec malo vyzerať takto:
To je všetko. A pri zmene zdrojových údajov už nebudú žiadne problémy s rozširovaním vnorených tabuliek.
- Vytváranie multiformátových tabuliek z jedného hárka v Power Query
- Vytvárajte tabuľky s rôznymi hlavičkami z viacerých súborov programu Excel
- Zhromažďovanie údajov zo všetkých listov knihy do jednej tabuľky