Како правилно да ги проширите вгнездените табели во Power Query

содржина

Да речеме дека имаме датотека Excel со неколку паметни табели:

Како правилно да ги проширите вгнездените табели во Power Query

Ако ги вчитате овие табели во Power Query на стандарден начин користејќи ја командата Податоци – Добијте податоци – Од датотека – Од книга (Податоци - Добијте податоци - Од датотека - Од работна книга), тогаш добиваме нешто како ова:

Како правилно да ги проширите вгнездените табели во Power Query

Сликата, мислам, е позната на многу корисници на Power Query. Слични вгнездени табели може да се видат по комбинирање на прашања (a la VLOOKUP), групирање (команда Група од табот Трансформација), увоз на сите датотеки од дадена папка, итн.

Следниот логичен чекор во оваа ситуација е обично проширување на сите вгнездени табели одеднаш - користејќи го копчето со двојни стрелки во заглавието на колоната податоци:

Како правилно да ги проширите вгнездените табели во Power Query

Како резултат на тоа, добиваме склоп на сите редови од сите табели во една целина. Сè е добро, едноставно и јасно. 

Сега замислете дека е додадена нова колона (Попуст) во изворните табели и/или една од постоечките (Град) е избришана:

Како правилно да ги проширите вгнездените табели во Power Query

Тогаш нашето барање по ажурирањето ќе врати не толку убава слика - попустот не се појави, а градската колона стана празна, но не исчезна:

Како правилно да ги проширите вгнездените табели во Power Query

И лесно е да се види зошто - во лентата со формули јасно може да се види дека имињата на проширените колони се тврдокодирани во функциските аргументи Табела.ExpandTableColumn како списоци во кадрави загради.

Лесно е да се заобиколи овој проблем. Прво, да ги добиеме имињата на колоните од заглавието на која било (на пример, првата) табела користејќи ја функцијата Табела.Имиња на колони. Ќе изгледа вака:

Како правилно да ги проширите вгнездените табели во Power Query

Тука:

  • #"Другите колони се отстранети" – името на претходниот чекор, од каде ги земаме податоците
  • 0 {} – бројот на табелата од која го извлекуваме заглавјето (сметајќи од нула, односно 0 е првата табела)
  • [Податоци] – името на колоната во претходниот чекор, каде што се наоѓаат проширените табели

Останува да се замени конструкцијата добиена во лентата со формули во функцијата Табела.ExpandTableColumn на чекорот на проширување на табелите наместо хард-кодирани списоци. Сето тоа на крајот би требало да изгледа вака:

Како правилно да ги проширите вгнездените табели во Power Query

Тоа е се. И нема да има повеќе проблеми со проширување на вгнездените табели кога ќе се променат изворните податоци.

  • Изградба на мултиформатни табели од еден лист во Power Query
  • Изградете табели со различни заглавија од повеќе датотеки на Excel
  • Собирање податоци од сите листови од книгата во една табела

 

Оставете Одговор