Power Query e Colonna con valori a scalare

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

Moderatore: Utilizzo_prof_Excel

Rispondi

AntonioP
Messaggi: 79 | Topic creati
Iscritto il: gio 30 lug 2020, 13:18
Ringraziato: 10 volte
Contatta:

Power Query e Colonna con valori a scalare

Messaggio da AntonioP »

Ciao Ragazzi,
con Power Query (non posso con DAX) devo costruire una colonna M che calcola su ogni rigo il fido residuo.
Il FIDO complessivo è nella colonna K e devo decurtarla per il valore presente nella colonna H.

Ovviamente il progressivo a scalare del fido è per cliente.

Non posso farlo con una formula DAX, perchè da questa tabella dovrò tirare fuori tante pivot quanti sono gli agenti, usando un trucchetto di @Emmanuele Vietti che purtroppo funziona solo nella forma classica.

Grazie
Allegati
Fido_residuo.xlsx
(12.63 KiB) Scaricato 30 volte


Avatar utente

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

Power Query e Colonna con valori a scalare

Messaggio da Enrico Galli »

Ocio che questa è tosta eh! :lol:

Codice: Seleziona tutto

// ImportoResiduo
let
    Origine = Excel.CurrentWorkbook(){[Name="Tabella1"]}[Content],
    #"Modificato tipo" = Table.TransformColumnTypes(Origine,{{"Nr. cliente", type text}, {"Clienti.Nome", type text}, {"Data di registrazione", type date}, {"Tipo di documento", type text}, {"Nr. documento", type any}, {"Data documento", type datetime}, {"Importo originario", type number}, {"Importo residuo", type number}, {"Codice metodo di pagamento", type text}, {"Cod. agente", type text}, {"Ultimo Fido", Int64.Type}, {"NOTE", type any}, {"Fidoresiduo", type number}}),
    #"Rimosse colonne" = Table.RemoveColumns(#"Modificato tipo",{"Fidoresiduo"}),
    #"Raggruppate righe" = Table.Group(#"Rimosse colonne", {"Nr. cliente"}, {{"ar", (x) => Table.AddColumn(Table.AddIndexColumn(Table.Sort(x,{{"Data di registrazione", Order.Ascending}, {"Nr. documento", Order.Ascending}}), "id", 1,1), "Residuo", (y) => y[Ultimo Fido] - List.Sum(List.Range(x[Importo residuo],0,y[id])))}}),
    #"Tabella ar espansa" = Table.ExpandTableColumn(#"Raggruppate righe", "ar", {"Clienti.Nome", "Data di registrazione", "Tipo di documento", "Nr. documento", "Data documento", "Importo originario", "Importo residuo", "Codice metodo di pagamento", "Cod. agente", "Ultimo Fido", "NOTE", "id", "Residuo"}, {"Clienti.Nome", "Data di registrazione", "Tipo di documento", "Nr. documento", "Data documento", "Importo originario", "Importo residuo", "Codice metodo di pagamento", "Cod. agente", "Ultimo Fido", "NOTE", "id", "Residuo"})
in
    #"Tabella ar espansa"
Allegati
Fido_residuo.xlsx
(24.45 KiB) Scaricato 40 volte
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

Autore del topic
AntonioP
Messaggi: 79 | Topic creati
Iscritto il: gio 30 lug 2020, 13:18
Ringraziato: 10 volte
Contatta:

Power Query e Colonna con valori a scalare

Messaggio da AntonioP »

Enrico Galli ha scritto: ven 11 set 2020, 20:17 Ocio che questa è tosta eh! :lol:

Codice: Seleziona tutto

// ImportoResiduo
let
    Origine = Excel.CurrentWorkbook(){[Name="Tabella1"]}[Content],
    #"Modificato tipo" = Table.TransformColumnTypes(Origine,{{"Nr. cliente", type text}, {"Clienti.Nome", type text}, {"Data di registrazione", type date}, {"Tipo di documento", type text}, {"Nr. documento", type any}, {"Data documento", type datetime}, {"Importo originario", type number}, {"Importo residuo", type number}, {"Codice metodo di pagamento", type text}, {"Cod. agente", type text}, {"Ultimo Fido", Int64.Type}, {"NOTE", type any}, {"Fidoresiduo", type number}}),
    #"Rimosse colonne" = Table.RemoveColumns(#"Modificato tipo",{"Fidoresiduo"}),
    #"Raggruppate righe" = Table.Group(#"Rimosse colonne", {"Nr. cliente"}, {{"ar", (x) => Table.AddColumn(Table.AddIndexColumn(Table.Sort(x,{{"Data di registrazione", Order.Ascending}, {"Nr. documento", Order.Ascending}}), "id", 1,1), "Residuo", (y) => y[Ultimo Fido] - List.Sum(List.Range(x[Importo residuo],0,y[id])))}}),
    #"Tabella ar espansa" = Table.ExpandTableColumn(#"Raggruppate righe", "ar", {"Clienti.Nome", "Data di registrazione", "Tipo di documento", "Nr. documento", "Data documento", "Importo originario", "Importo residuo", "Codice metodo di pagamento", "Cod. agente", "Ultimo Fido", "NOTE", "id", "Residuo"}, {"Clienti.Nome", "Data di registrazione", "Tipo di documento", "Nr. documento", "Data documento", "Importo originario", "Importo residuo", "Codice metodo di pagamento", "Cod. agente", "Ultimo Fido", "NOTE", "id", "Residuo"})
in
    #"Tabella ar espansa"
Sapevo che sarebbe stata tosta. Se vuoi diventare bravo devi stare con i più bravi. Un bel video sull’argomento dove spieghi i passaggi sarebbe grandioso!! Lunedì in ufficio lo metto in pratica.

Autore del topic
AntonioP
Messaggi: 79 | Topic creati
Iscritto il: gio 30 lug 2020, 13:18
Ringraziato: 10 volte
Contatta:

Power Query e Colonna con valori a scalare

Messaggio da AntonioP »

Carissimo Enrico Galli la query funziona una meraviglio ed è velocissima. Mi hai risolto un problema!!

La cosa più difficile è capirla per poterla replicare in futuro....
Avatar utente

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

Power Query e Colonna con valori a scalare

Messaggio da Enrico Galli »

Ciao, mi fa piacere che intanto un problema si sia risolto. Per una spiegazione dettagliata di come funziona, forse hai ragione servirebbe un filmato... spero di riuscire a fare qualcosa prossimamente, ma sono giornatacce ;)
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

Osiride
Messaggi: 15 | Topic creati
Iscritto il: gio 6 ago 2020, 0:34
Ringraziato: 4 volte

Power Query e Colonna con valori a scalare

Messaggio da Osiride »

Enrico Galli ha scritto: lun 14 set 2020, 16:38 Ciao, mi fa piacere che intanto un problema si sia risolto. Per una spiegazione dettagliata di come funziona, forse hai ragione servirebbe un filmato... spero di riuscire a fare qualcosa prossimamente, ma sono giornatacce ;)
Ciao Enrico, ma hai un canale YT?
Avatar utente

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

Power Query e Colonna con valori a scalare

Messaggio da Enrico Galli »

Osiride ha scritto: lun 14 set 2020, 22:21 Ciao Enrico, ma hai un canale YT?
Non proprio... ne ho uno, ma è dedicato a un programma che ho creato per excel. Bisognerà rimediare, appena il tempo lo permetterà! ;)
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
Rispondi