Jak poprawnie rozwinąć zagnieżdżone tabele w dodatku Power Query

Spis treści

Załóżmy, że mamy plik Excela z kilkoma inteligentnymi tabelami:

Jak poprawnie rozwinąć zagnieżdżone tabele w dodatku Power Query

Jeśli ładujesz te tabele do dodatku Power Query w standardowy sposób za pomocą polecenia Dane – Pobierz dane – Z pliku – Z książki (Dane — Pobierz dane — Z pliku — Ze skoroszytu), wtedy otrzymujemy coś takiego:

Jak poprawnie rozwinąć zagnieżdżone tabele w dodatku Power Query

Myślę, że ten obraz jest znany wielu użytkownikom dodatku Power Query. Podobne tabele zagnieżdżone można zobaczyć po połączeniu zapytań (a la VLOOKUP), grupowaniu (polecenie Grupuj według Zakładka Transformacja), importowanie wszystkich plików z danego folderu itp.

Kolejnym logicznym krokiem w tej sytuacji jest zwykle rozwinięcie wszystkich zagnieżdżonych tabel jednocześnie – za pomocą przycisku z podwójnymi strzałkami w nagłówku kolumny Dane:

Jak poprawnie rozwinąć zagnieżdżone tabele w dodatku Power Query

W rezultacie otrzymujemy zestaw wszystkich wierszy ze wszystkich tabel w jedną całość. Wszystko jest dobre, proste i jasne. 

Teraz wyobraź sobie, że w tabelach źródłowych została dodana nowa kolumna (Rabat) i/lub jedna z istniejących (Miasto) została usunięta:

Jak poprawnie rozwinąć zagnieżdżone tabele w dodatku Power Query

Wtedy nasza prośba po aktualizacji zwróci niezbyt piękny obrazek – rabat się nie pojawił, a kolumna miasta stała się pusta, ale nie zniknęła:

Jak poprawnie rozwinąć zagnieżdżone tabele w dodatku Power Query

I łatwo zrozumieć, dlaczego – na pasku formuły wyraźnie widać, że nazwy rozszerzonych kolumn są na stałe zakodowane w argumentach funkcji Tabela.Rozwiń kolumnę tabeli jako listy w nawiasach klamrowych.

Obejście tego problemu jest łatwe. Najpierw pobierzmy nazwy kolumn z nagłówka dowolnej (na przykład pierwszej) tabeli za pomocą funkcji Tabela.Nazwy kolumn. Będzie to wyglądać tak:

Jak poprawnie rozwinąć zagnieżdżone tabele w dodatku Power Query

Tutaj:

  • #”Inne kolumny usunięte” – nazwa poprzedniego kroku, z którego pobieramy dane
  • 0 {} – numer tabeli, z której wyciągamy nagłówek (licząc od zera, czyli 0 to pierwsza tabela)
  • [Dane] – nazwa kolumny w poprzednim kroku, w której znajdują się rozwinięte tabele

Pozostaje podstawić konstrukcję uzyskaną w pasku formuły do ​​funkcji Tabela.Rozwiń kolumnę tabeli na etapie rozwijania tabel zamiast list zakodowanych na stałe. Ostatecznie wszystko powinno wyglądać tak:

Jak poprawnie rozwinąć zagnieżdżone tabele w dodatku Power Query

To wszystko. I nie będzie więcej problemów z rozwijaniem zagnieżdżonych tabel, gdy zmienią się dane źródłowe.

  • Tworzenie tabel wieloformatowych z jednego arkusza w Power Query
  • Twórz tabele z różnymi nagłówkami z wielu plików Excel
  • Zbieranie danych ze wszystkich arkuszy księgi w jedną tabelę

 

Dodaj komentarz