Excel: Ricavare lo stato spedizione più aggiornato per ogni cliente
In questo tutorial vediamo un'applicazione delle Power Query
Premessa
Abbiamo un file con i seguenti dati.

Notiamo che innanzitutto il file è di tipo CSV.
Le informazioni contenute sono:
- ID_Cliente - identificativo del cliente in ordine crescente
- Data_ordine - Data in cui è stato fatto l'ordine. Lo stesso cliente può aver fatto più ordini.
- Stato - Stato dell'ordine che può essere: ricevuto, in preparazione, spedito
Il file contiene 20.000 ordini.
Obiettivo
Ricavare per ogni cliente l'ultimo ordine e lo stato.
ES per il cliente 9495: la data più recente è 02/06/2020 con lo stato ricevuto
Risoluzione
Per ottenere il nostro obiettivo utilizziamo le Power Query di Excel.
Cominciamo importare il file CSV importandolo in Excel.
Andiamo su Dati > Recupera Dati > Da File > Da testo/CSV
Selezioniamo il file CVS, verifichiamo che i dati siano letti correttamente e facciamo click su Importa.

Excel ci mostra un'anteprima dei dati, mostrandoci un'anteprima come verranno importati.
Importante qui fare click su Trasforma Dati in modo da procedere con la Power Query

A questo punto si apre la finestra dell'Editor di Power Query.
Nel terzo passaggio, la colonna Data_ordine è stata riconosciuta di tipo data

Facciamo click sul pulsante Raggruppa per.
Indichiamo di raggruppare per ID_cliente. Creiamo così una nuova colonna Data_ultima che conterrà il valore più alto (massimo) della Data_ordine. In questo modo otteniamo, per ogni cliente, l'ordine più recente.

Diamo un nome alla Query cliente_data_ultima e andiamo a salvare facendo click su Chiudi e carica > Chiudi e carica in...

Selezioniamo Crea solo connessione e diamo OK

Nella colonna di destra compare la nostra connessione cliente_data_ultima

Se andiamo con il mouse sopra la connessione appare un'anteprima dei risultati. come si può vedere manca la colonna dello status.

Per ottenere questo dato occorre lavorare con un'altra connessione.
Possiamo duplicare quella che abbiamo già creato facendo click sopra con il tasto destro e scegliendo "duplica"

Diamo il nome cliente_data_stato alla connessione ed eliminiamo l'ultimo passaggio Raggruppate righe

In questo modo ritorniamo ad avere i dati come nel foglio CSV.
Possiamo salvare questa connessione sempre con Chiudi e carica > Chiudi e carica in... > Solo connessione

È ora il momento di unire le due query.

Facciamo click con il tasto destru sulla prima connessione cliente_data_ultima e scegliamo Unione

Scegliamo la seconda query cliente_data_stato nell'elenco a tendina.
Facciamo click su entrambi i campi ID_Cliente delle due tabelle in modo da collegarle.
Per prendere anche lo stato corretto, occorre collegare anche i campi Data_ordine, tenendo premuto il tasto MAIUSC e facendo click su entrambi i campi. Come si può notare compaiono i numeri 1 e 2 ad indicare l'ordine con cui vengono collegati i campi in entrambe le tabelle.

Terminiamo con OK
Si apre la finestra dell'editor e come possiamo notare, la terza colonna non visualizza i dati ma la parola Table. Diamo intanto il nome alla query cliente_data_ultima_stato

Facciamo click sul simbolo nella terza colonna.
Selezioniamo solo il campo Stato e spegniamo Usa il nome della colonna originale come prefisso

A questo punto abbiamo anche la colonna Stato con lo stato relativo al cliente e all'ultima data di ordine

Questa volta salviamo anche il risultato della connessione con Chiudi e carica > Chiudi e carica in...

Indichiamo di mettere il risultato in una tabella

Otteniamo infine un nuovo foglio di Excel con i nostri dati in un oggetto Tabella cliente_data_ultima_stato

Note
Se i dati nel foglio CSV cambiano, occorrerà riaggiornare i risultati di Excel andando nel menù Dati > Aggiorna tutti

In allegato il file CSV