Gestire processi PowerQuery su file con intestazioni colonne diverse

Non è propriamente un programma di BI, ma nelle sue versioni più recenti anche Excel può fare grandi cose!

Moderatore: Utilizzo_prof_Excel

Rispondi

fabioberetta
Messaggi: 22 | Topic creati
Iscritto il: mar 12 apr 2022, 12:51
Luogo: Milano
Contatta:

Gestire processi PowerQuery su file con intestazioni colonne diverse

Messaggio da fabioberetta »

Buongiorno a tutti,

avrei bisogno un suggerimento:

ho impostato un processo di lavoro in PowerQuery su una tabella, dovrei replicare questi stessi passaggi su altre tabelle identiche che hanno però intestazioni di colonne diverse.
Come posso fare senza dover riscrivere i passaggi di PowerQuery modificando sempre i nomi delle intestazioni?

grazie mille

Fabio


Avatar utente

Enrico Galli
Messaggi: 783 | Topic creati
Iscritto il: dom 28 giu 2020, 19:03
Luogo: San Giovanni in Persiceto (BO)
Ringraziato: 297 volte
Contatta:

Gestire processi PowerQuery su file con intestazioni colonne diverse

Messaggio da Enrico Galli »

Ciao. La soluzione più semplice è... rinominare le colonne prima dell'importazione rendendole uniformi ;)
Non è l'unica, ma c'è un po' da impazzire col codice M altrimenti. Il fatto che le colonne di Power Query non possano essere accedute tramite indice posizionale, è un problema enorme
Enrico Galli
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione
Avatar utente

Andrea90
Messaggi: 1351 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 490 volte
Contatta:

Gestire processi PowerQuery su file con intestazioni colonne diverse

Messaggio da Andrea90 »

fabioberetta,

Se le tabelle hanno lo stesso ordinamento nelle colonne, seppur con nomi diversi, allora per rendere la query più "robusta" puoi utilizzare Table.ColumnNames{} dove all'interno delle parentesi {} inserisci il valore di indice che rappresenta la colonna.

Ad esempio per indicare la prima colonna dovresti scrivere: Table.ColumnNames{0}

In questo modo, nei passaggi dove hai un riferimento esplicito alla colonna (ad esempio nei passaggi in cui rinomini l'intestazione di un campo), potrai andare ad utilizzare questa sintassi.

Se invece l'ordinamento dei campi cambia, allora la faccenda si complica ed è probabile che ti potranno servire delle tabelle di appoggio.

Andrea
Se ti è piaciuta la soluzione e vuoi contribuire allo sviluppo del forum --> Donazioni
Rispondi