Ottenere la riga di listino più recente L’argomento è risolto

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

Moderatore: Utilizzo_prof_Excel

Avatar utente

alex77
Messaggi: 97 | Topic creati
Iscritto il: sab 24 ott 2020, 23:04
Luogo: Treviso
Ringraziato: 8 volte

Ottenere la riga di listino più recente

Messaggio da alex77 »

Buonasera a tutti,
avrei bisogno dato un "listino", fatto da codice, anno, valore1, valore2 ottenere per ciascun codice, per l'anno massimo, i corrispondenti valore1 e valore2.
Al momento faccio una miriade di passaggi, ma ho la speranza che ci sia un metodo più snello. Allego file con tabella di input e, a destra, tabella di desiderato output.

Grazie mille per un eventuale aiuto.

A.
Allegati
EsempioPQ.xlsx
(11.08 KiB) Scaricato 7 volte


Avatar utente

Andrea90
Messaggi: 752 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Riccione
Ringraziato: 333 volte
Contatta:

Ottenere la riga di listino più recente

Messaggio da Andrea90 »

Ciao alex77,

Prova così:

Codice: Seleziona tutto

Table.SelectRows( Origine, each [Anno]=List.Max(Origine[Anno]))
Andrea
Se ti è piaciuta la soluzione e vuoi contribuire allo sviluppo del forum --> Donazioni
Avatar utente

Autore del topic
alex77
Messaggi: 97 | Topic creati
Iscritto il: sab 24 ott 2020, 23:04
Luogo: Treviso
Ringraziato: 8 volte

Ottenere la riga di listino più recente

Messaggio da alex77 »

ciao Andrea90 ,
grazie, intanto ho imparato una cosa nuova. Confesso però che il mio file di esempio trae in inganno (e forse anche la mia spiegazione di quello che necessito). Non ho bisogno dell'anno massimo in assoluto, ma dell'anno massimo per ciascun codice. Nell'esempio che ho messo per entrambi i codici è 2021, ma nella realtà della mia origine dati alcuni codici hanno 2021, ma altri hanno 2018, 2015...
Avatar utente

Andrea90
Messaggi: 752 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Riccione
Ringraziato: 333 volte
Contatta:

Ottenere la riga di listino più recente

Messaggio da Andrea90 »

alex77

Prova cosi allora:

Codice: Seleziona tutto

let
    Origine = Excel.CurrentWorkbook(){[Name="Tabella1"]}[Content],
    CustomStep = Table.AddColumn(Table.Group(Origine, {"cdart"}, {{"TempTable", each _, type table}}), "Personalizzato", each Table.Max([TempTable], "Anno")),
    Expand = Table.RemoveColumns( Table.ExpandRecordColumn(CustomStep, "Personalizzato", {"Anno", "valore1", "valore2"}, {"Anno", "valore1", "valore2"}), {"TempTable"})
in
    Expand
Andrea
Se ti è piaciuta la soluzione e vuoi contribuire allo sviluppo del forum --> Donazioni
Avatar utente

Autore del topic
alex77
Messaggi: 97 | Topic creati
Iscritto il: sab 24 ott 2020, 23:04
Luogo: Treviso
Ringraziato: 8 volte

Ottenere la riga di listino più recente

Messaggio da alex77 »

Grazie Andrea90
funziona benissimo! Mi studio bene il codice che mi tornerà sicuramente utile in altre occasioni.
Ho comprato anche un libro, che ha qualche capitolo su M, spero sia un buona base perchè vedo che si riescono a fare cose veramente utili.

Grazie ancora

A.
Avatar utente

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

Ottenere la riga di listino più recente

Messaggio da Enrico Galli »

Ciao, aggiungo una sintassi alternativa a puro scopo "didattico" (quella di Andrea90 va benissimo come hai già constatato)

Codice: Seleziona tutto

let
    Origine = Excel.CurrentWorkbook(){[Name="Tabella1"]}[Content],
    #"Raggruppate righe" = Table.Group(Origine, {"cdart"}, {{"ar", each Table.SelectRows(_, (x) => x[Anno] = List.Max(_[Anno])), type table }}),
    #"Rimosse colonne" = Table.RemoveColumns(#"Raggruppate righe",{"cdart"}),
    #"Tabella ar espansa" = Table.ExpandTableColumn(#"Rimosse colonne", "ar", {"cdart", "Anno", "valore1", "valore2"}, {"cdart", "Anno", "valore1", "valore2"})
in
    #"Tabella ar espansa"
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

Autore del topic
alex77
Messaggi: 97 | Topic creati
Iscritto il: sab 24 ott 2020, 23:04
Luogo: Treviso
Ringraziato: 8 volte

Ottenere la riga di listino più recente

Messaggio da alex77 »

Grazie Enrico Galli
mi studio anche questa. Mi sono preso un bel librone su PQ che ha anche una discreta sezione su M, così spero di cominciare a capirci sempre un po' di più perché lo strumento mi sembra davvero potente (senza volergli far fare cose che non sono per lui!).
Avatar utente

Alieno86
Messaggi: 40 | Topic creati
Iscritto il: mer 9 giu 2021, 16:36
Ringraziato: 4 volte

Ottenere la riga di listino più recente

Messaggio da Alieno86 »

alex77 ha scritto: mar 23 nov 2021, 14:32 Grazie Enrico Galli
mi studio anche questa. Mi sono preso un bel librone su PQ che ha anche una discreta sezione su M, così spero di cominciare a capirci sempre un po' di più perché lo strumento mi sembra davvero potente (senza volergli far fare cose che non sono per lui!).
Giusto per info, come si chiama il libro?
Avatar utente

Autore del topic
alex77
Messaggi: 97 | Topic creati
Iscritto il: sab 24 ott 2020, 23:04
Luogo: Treviso
Ringraziato: 8 volte

Ottenere la riga di listino più recente

Messaggio da alex77 »

ciao Alieno86
il libro si chiama: "Collect, Combine, and Transform Data Using Power Query in Excel and Power BI".
Altro libro sul tema: "Master your data with Excel and Power BI" che è la nuova edizione di "M is for (Data) Monkey".

Buona (eventuale) lettura!

A.
Avatar utente

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

Ottenere la riga di listino più recente

Messaggio da Enrico Galli »

alex77 ha scritto: mer 1 dic 2021, 17:15 ciao Alieno86
Altro libro sul tema: "Master your data with Excel and Power BI" che è la nuova edizione di "M is for (Data) Monkey"
La prima edizione non mi è molto piaciuta (vedi la mia recensione), ma il titolo era MOLTO più bello! :D
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