Recimo, da imamo Excelovo datoteko z več pametnimi tabelami:
Če te tabele naložite v Power Query na standardni način z ukazom Podatki – Pridobi podatke – Iz datoteke – Iz knjige (Podatki — Pridobi podatke — Iz datoteke — Iz delovnega zvezka), potem dobimo nekaj takega:
Mislim, da je slika znana mnogim uporabnikom Power Queryja. Podobne ugnezdene tabele lahko vidite po združevanju poizvedb (a la VLOOKUP), združevanju (ukaz Skupina z tab Preoblikovanje), uvoz vseh datotek iz dane mape itd.
Naslednji logični korak v tej situaciji je običajno razširitev vseh ugnezdenih tabel hkrati – z uporabo gumba z dvojnimi puščicami v glavi stolpca datum:
Kot rezultat dobimo sklop vseh vrstic iz vseh tabel v eno celoto. Vse je dobro, preprosto in jasno.
Zdaj pa si predstavljajte, da je bil v izvorne tabele dodan nov stolpec (Popust) in/ali ena od obstoječih (Mesto) izbrisana:
Potem bo naša zahteva po posodobitvi vrnila ne tako lepo sliko - popust se ni pojavil, stolpec mesta pa je postal prazen, vendar ni izginil:
In enostavno je razumeti, zakaj – v vrstici s formulami lahko jasno vidite, da so imena razširjenih stolpcev trdo kodirana v argumentih funkcije Table.ExpandTableColumn kot seznami v zavitih oklepajih.
Temu problemu se je enostavno izogniti. Najprej pridobimo imena stolpcev iz glave katere koli (na primer prve) tabele s funkcijo Table.ColumnNames. Videti bo takole:
Tukaj:
- #”Drugi stolpci odstranjeni” – ime predhodnega koraka, od koder črpamo podatke
- 0 {} – številka tabele, iz katere izluščimo glavo (šteto od nič, tj. 0 je prva tabela)
- [Podatki] – ime stolpca v prejšnjem koraku, kjer se nahajajo razširjene tabele
Ostaja, da zamenjamo konstrukcijo, pridobljeno v vrstici formule, v funkcijo Table.ExpandTableColumn pri koraku razširitve tabel namesto trdo kodiranih seznamov. Na koncu bi moralo vse izgledati takole:
To je vse. In ne bo več težav z razširitvijo ugnezdenih tabel, ko se izvorni podatki spremenijo.
- Gradnja tabel z več formati iz enega lista v Power Query
- Ustvarite tabele z različnimi glavami iz več Excelovih datotek
- Zbiranje podatkov z vseh listov knjige v eno tabelo