Salta al contenuto principale

Microsoft Excel - Power Query - Selezionare righe rispetto a una data - Uso dei parametri

Scenario

Abbiamo un elenco di ordini generati dal gestionale. L'elenco contiene ordini anche molto vecchi. Vogliamo riportare l'elenco degli ordini a partire da una certa data.

Elenco degli ordini

Vogliamo ricavare solo le righe che contendono date uguali o maggiori a una data indicata.

File di esempio

ordine-articolo-prezzo.xlsx

Soluzione

1) Importazione dei dati

Creiamo un nuovo foglio di Excel e importiamo i dati estratti con Dati > Recupera dati > Da file > Da excel cartella di lavoro

Recupero Dati da Excel

Recuperiamo la tabella T_ordini

Power Query - Recupero Dati da Excel

Otteniamo la nostra query

Power Query - Recupero Dati da Excel

Simuliamo di filtrare le righe in base a una data. ES 01/05/2024. Questo ci servirà per creare le istruzioni da utilizzare successivamente.

Per fare questo facciamo click sul pulsante filtro della colonna Data

Pulsante Filtro

Selezioniamo Filtri per date > Filtro personalizzato

Scegliamo è dopo o uguale a e indichiamo la data 01/05/2024

Seleziona per data

Confermando con OK abbiamo gli ordini dal 01/05/2024 in poi.

importazione

Chiudiamo con Chiudi e carica. Otteniamo la nostra tabella

importazione

2) creazione della cella contenente la data per filtrare l'elenco

Creiamo una nuova pagina parametri e nella cella A2 inseriamo la data per filtrare i nuovi ordini

importazione

Nella C2 inseriamo la formula

    =TESTO(A2;"aaaa-mm-gg")

In questo modo abbiamo la data formattata per essere usata in Power Query 

testo

 Diamo il nome data_nuovi a questa cella

nome cella

Questo nome potrà essere utilizzato all'interno della Power Query

Modifica della Power Query

Andiamo a modificare la Power Query T_ordini per esempio con il tasto destro e click su Modifica

Modifica Power Query

Andiamo nel menu Visualizza > Editor avanzato

Editor Avanzato

Inseriamo sopra la seconda riga il seguente testo

    data_nuovi = Excel.CurrentWorkbook(){[Name="data_nuovi"]}[Content][Column1]{0},
Modifica Power Query

in questo modo assegnano a data_nuovi il contenuto della cella che abbiamo chiamato data_nuovi. Infatti se confermiamo e andiamo sul primo passaggio abbiamo:

Verifica inserimento riga

Ritorniamo sull'editor avanzato. Modifichiamo la riga 6 

Editor Avanzato

al posto di 

    #date(2024, 5, 1)

inseriamo

    Date.FromText(data_nuovi)

Modifica riga

in questo modo viene convertito il testo "2024-05-01" in una data che può essere utilizzata nell'espressione 

    each [Data] >= Date.FromText(data_nuovi)

Confermiamo con OK e ora le righe sono filtrate in base a questo criterio. 

Possiamo tornare in Home e fare click su Chiudi e carica

Modifica riga

Verifica del funzionamento

Inseriamo una nuova data nella cella A2 del foglio Parametri: ad esempio 01/01/2024

Nuova data

Se aggiorniamo tutto con il pulsante Dati > Aggiorna tutti

Aggiorna Tutti

Possiamo andare nel foglio T_ordini e vedere che l'elenco è stato modificato

Elenco Aggiornato

Il file di Excel è scaricabile da qui