Lad os sige, at vi har en Excel-fil med flere smarte tabeller:
Hvis du indlæser disse tabeller i Power Query på standardmåden ved hjælp af kommandoen Data – Hent data – Fra fil – Fra bog (Data — Hent data — Fra fil — Fra projektmappe), så får vi noget som dette:
Billedet, tror jeg, er velkendt for mange Power Query-brugere. Lignende indlejrede tabeller kan ses efter kombination af forespørgsler (a la VLOOKUP), gruppering (kommando Gruppe af fanen Transformation), importere alle filer fra en given mappe osv.
Det næste logiske trin i denne situation er normalt at udvide alle indlejrede tabeller på én gang – ved hjælp af knappen med dobbeltpile i kolonneoverskriften data:
Som et resultat får vi en samling af alle rækker fra alle tabeller til en enkelt helhed. Alt er godt, enkelt og overskueligt.
Forestil dig nu, at en ny kolonne (Rabat) blev tilføjet i kildetabellerne og/eller en af de eksisterende (By) blev slettet:
Så vil vores anmodning efter opdateringen returnere et knap så smukt billede - rabatten dukkede ikke op, og bykolonnen blev tom, men forsvandt ikke:
Og det er nemt at se hvorfor – i formellinjen kan du tydeligt se, at navnene på de udvidede kolonner er hårdkodet i funktionsargumenterne Table.ExpandTableColumn som lister i krøllede parenteser.
Det er nemt at komme uden om dette problem. Lad os først få kolonnenavnene fra overskriften på en hvilken som helst (for eksempel den første) tabel ved hjælp af funktionen Tabel.Kolonnenavne. Det vil se sådan ud:
Her:
- #"Andre kolonner fjernet" – navnet på det forrige trin, hvor vi henter dataene fra
- 0 {} – nummeret på tabellen, hvorfra vi uddrager overskriften (tæller fra nul, dvs. 0 er den første tabel)
- [data] – navnet på kolonnen i det foregående trin, hvor de udvidede tabeller er placeret
Det er tilbage at erstatte konstruktionen opnået i formellinjen i funktionen Table.ExpandTableColumn på trinnet med at udvide tabeller i stedet for hårdkodede lister. Det hele skulle se sådan ud i sidste ende:
Det er alt. Og der vil ikke være flere problemer med at udvide indlejrede tabeller, når kildedataene ændres.
- Opbygning af multiformattabeller fra ét ark i Power Query
- Byg tabeller med forskellige overskrifter fra flere Excel-filer
- Indsamling af data fra alle ark i bogen i én tabel