Suposem que tenim un fitxer Excel amb diverses taules intel·ligents:
Si carregueu aquestes taules a Power Query de la manera estàndard mitjançant l'ordre Dades – Obtenir dades – Del fitxer – Del llibre (Dades — Obtenir dades — Del fitxer — Del llibre de treball), llavors obtenim alguna cosa com això:
La imatge, crec, és familiar per a molts usuaris de Power Query. Es poden veure taules imbricades similars després de combinar consultes (a la VLOOKUP), agrupar (ordre Agrupar per llengüeta Transformació), importar tots els fitxers d'una carpeta determinada, etc.
El següent pas lògic en aquesta situació sol ser expandir totes les taules imbricades alhora, fent servir el botó amb fletxes dobles a la capçalera de la columna. dades:
Com a resultat, obtenim un conjunt de totes les files de totes les taules en un sol tot. Tot és bo, senzill i clar.
Ara imagineu que s'ha afegit una nova columna (Descompte) a les taules d'origen i/o s'ha suprimit una de les existents (Ciutat):
Aleshores, la nostra sol·licitud després de l'actualització tornarà una imatge no tan bonica: el descompte no va aparèixer i la columna de la ciutat es va quedar buida, però no va desaparèixer:
I és fàcil veure per què: a la barra de fórmules podeu veure clarament que els noms de les columnes expandides estan codificats en els arguments de la funció Taula.ExpandTableColumn com a llistes entre claudàtors.
Eludir aquest problema és fàcil. Primer, obtenim els noms de les columnes de la capçalera de qualsevol taula (per exemple, la primera) mitjançant la funció Taula.Noms de columna. Es veurà així:
Aquí:
- #"S'han eliminat altres columnes" – el nom del pas anterior, d'on traiem les dades
- 0 {} – el número de la taula de la qual extreu la capçalera (comptant des de zero, és a dir, 0 és la primera taula)
- [Dades] – el nom de la columna del pas anterior, on es troben les taules ampliades
Queda per substituir la construcció obtinguda a la barra de fórmules per la funció Taula.ExpandTableColumn al pas d'ampliar taules en lloc de llistes codificades en dur. Al final tot hauria de quedar així:
Això és tot. I no hi haurà més problemes amb l'expansió de taules imbricades quan canviïn les dades d'origen.
- Creació de taules multiformat a partir d'un full a Power Query
- Creeu taules amb diferents capçaleres a partir de diversos fitxers Excel
- Recollida de dades de tots els fulls del llibre en una taula