Paano palawakin nang tama ang mga nested na talahanayan sa Power Query

Nilalaman

Sabihin nating mayroon kaming Excel file na may ilang matalinong talahanayan:

Paano palawakin nang tama ang mga nested na talahanayan sa Power Query

Kung ilo-load mo ang mga talahanayang ito sa Power Query sa karaniwang paraan gamit ang command Data – Kumuha ng data – Mula sa file – Mula sa aklat (Data — Kumuha ng Data — Mula sa file — Mula sa Workbook), pagkatapos ay makakakuha tayo ng ganito:

Paano palawakin nang tama ang mga nested na talahanayan sa Power Query

Ang larawan, sa palagay ko, ay pamilyar sa maraming gumagamit ng Power Query. Ang mga katulad na nested table ay makikita pagkatapos pagsamahin ang mga query (a la VLOOKUP), pagpapangkat (command Grupo ng tab Pagbabagong-anyo), pag-import ng lahat ng mga file mula sa isang naibigay na folder, atbp.

Ang susunod na lohikal na hakbang sa sitwasyong ito ay karaniwang palawakin ang lahat ng nested table nang sabay-sabay - gamit ang button na may double arrow sa column header data:

Paano palawakin nang tama ang mga nested na talahanayan sa Power Query

Bilang isang resulta, nakakakuha kami ng isang pagpupulong ng lahat ng mga hilera mula sa lahat ng mga talahanayan sa isang solong kabuuan. Ang lahat ay mabuti, simple at malinaw. 

Ngayon isipin na ang isang bagong column (Discount) ay idinagdag sa source table at/o isa sa mga umiiral na (City) ay tinanggal:

Paano palawakin nang tama ang mga nested na talahanayan sa Power Query

Pagkatapos ang aming kahilingan pagkatapos ng pag-update ay magbabalik ng isang hindi napakagandang larawan - ang diskwento ay hindi lumitaw, at ang haligi ng lungsod ay naging walang laman, ngunit hindi nawala:

Paano palawakin nang tama ang mga nested na talahanayan sa Power Query

At madaling makita kung bakit – sa formula bar ay malinaw mong makikita na ang mga pangalan ng mga pinalawak na column ay naka-hardcode sa mga argumento ng function Talahanayan.ExpandTableColumn bilang mga listahan sa mga kulot na bracket.

Ang pag-alis sa problemang ito ay madali. Una, kunin natin ang mga pangalan ng column mula sa header ng alinman (halimbawa, ang una) na talahanayan gamit ang function. Table.ColumnNames. Magmumukha itong:

Paano palawakin nang tama ang mga nested na talahanayan sa Power Query

Dito:

  • #"Inalis ang iba pang column" – ang pangalan ng nakaraang hakbang, kung saan kami kumukuha ng data
  • 0 {} – ang bilang ng talahanayan kung saan kinukuha namin ang header (nagbibilang mula sa zero, ibig sabihin, 0 ang unang talahanayan)
  • [data] – ang pangalan ng column sa nakaraang hakbang, kung saan matatagpuan ang mga pinalawak na talahanayan

Ito ay nananatiling palitan ang konstruksiyon na nakuha sa formula bar sa function Talahanayan.ExpandTableColumn sa hakbang ng pagpapalawak ng mga talahanayan sa halip na mga hard-coded na listahan. Dapat magmukhang ganito ang lahat sa huli:

Paano palawakin nang tama ang mga nested na talahanayan sa Power Query

Iyon lang. At wala nang magiging problema sa pagpapalawak ng mga nested table kapag nagbago ang source data.

  • Bumuo ng mga multiformat na talahanayan mula sa isang sheet sa Power Query
  • Bumuo ng mga talahanayan na may iba't ibang mga header mula sa maraming mga Excel file
  • Pagkolekta ng data mula sa lahat ng mga sheet ng libro sa isang talahanayan

 

Mag-iwan ng Sagot