LinkedIn Facebook

HomeBlog › Excel: Creare sottoinsiemi di dati utilizzando il Filtro Avanzato

Creare sottoinsiemi di dati utilizzando il Filtro Avanzato di Excel

Excel: Filtro Avanzato

Applicare un filtro un’operazione molto semplice, anche se spesso viene fatta in modo semplificato.
Non sempre se ne conoscono le sfumature più nascoste, come ad esempio la possibilità di utilizzare il cosiddetto filtro avanzato.
Di norma il filtro prevede al massimo due condizioni di filtraggio nella stessa colonna con gli opportuni operatori And ed Or. Inoltre, se si volesse creare un elenco dati a parte contenente i soli dati filtrati, bisognerebbe ricorrere alle operazioni tradizionali di copia e incolla.
E se la necessità fosse applicare criteri di filtro incongruenti tra di loro, a maggior ragione bisognerebbe applicare i vari filtri e poi copiare e incollare gli esiti in un’area a parte.
A tutte le esigenze sopra elencate risponde il comando del filtro avanzato, che si trova nella scheda Dati nel gruppo di comandi Ordina e filtra.
L’esatta denominazione del comando è Avanzate.


Di per sé è molto interessante, ma ha anche dei limiti che però possono essere superati grazie ad alcune accortezze, cui si farà cenno.
L’esempio di partenza è un elenco dati come quello sotto illustrato, in cui sono presenti numerosi record all’interno delle cinque colonne.
Ci sono date, numeri di conto, importi di transazioni, beneficiari e categorie.



Per applicare il filtro avanzato, occorre necessariamente utilizzare un’altra parte del foglio di lavoro al di fuori dell’elenco dati.
Alla stessa altezza della riga delle etichette o intestazioni, occorre riportare i nomi delle etichette su cui si pensa di applicare un filtro oppure, come nel caso dell’esempio a partire dalla cella G1, sono riportate tutte le etichette anche quelle che non verranno sottoposte a filtraggio (ad es. la colonna Conto).
Sotto alle etichette vanno inseriti i criteri di filtro: la data specifica, la categoria specifica, l’importo specifico.
Nel caso di numeri e date, è anche possibile usare gli operatori di confronto come maggiore >, maggiore o uguale >=, minore <, minore o uguale <=, diverso <>.
Per usare un criterio inclusivo (ed esempio importi tra € 100,00 ed € 300,00) bisogna ripetere due volte le etichette su due colonne diverse e collocare il singolo criterio sotto ogni colonna.
Pertanto, come illustra l’immagine a seguire, nella cella sotto alla prima colonna Importo va scritto il criterio >=100 e nella cella sotto la seconda colonna il criterio <=300.



Nell’esempio le altre colonne sono prive di criteri il che significa che nessun filtro è applicato sulla data, sul beneficiario, sul conto e sulla categoria.
Invece, nell’esempio sottostante sono stati aggiunti dei criteri e cioè un filtro cronologico ed un filtro sulla categoria di spesa.
Il che significa che verranno filtrate tutte le transazioni di importo inclusi tra € 100 ed € 300 fatte nell’ultimo trimestre (dal 01/10 in poi) per la categoria “Ristorazione”.
I criteri sulla data e sulla categoria devono essere ripetuti ad ogni riga.



Un filtro come quello elencato si può fare tranquillamente con il comando classico del filtro automatico cosi come eventuali filtri che dovesse basarsi su criteri aggiunti sotto.
In questi casi il vantaggio del filtro avanzato consiste soltanto nella possibilità di avere la tabella filtrata in un’altra zona del foglio.
Ma la potenza del filtro avanzato si sprigiona quando si possono usare i caratteri jolly nei criteri e, soprattutto, quando i criteri di filtraggio sono incongruenti tra di loro, come mostra l’elenco criteri sottostante.



Come sarebbe possibile applicare nello stesso elenco dati un filtro del genere che faccia vedere in contemporanea tutte le transazioni del quarto trimestre con importo incluso tra € 100 e 300 della categoria ristorazione, tutte le transazioni con importo incluso tra € 100 ed € 300 nella categoria alimentari di tutto l’anno e tutte le transazioni di importo incluso tra € 100 ed € 500 nella categoria arredamento del solo beneficiario Adventure Works nell’arco di tutto l’anno?
La parte fino ad ora sviluppata concerne la preparazione necessaria per applicare il filtro avanzato. Ciò che ora va descritto è come procedere al filtro.
L’azione è molto semplice ma può essere resa ancora più efficace se si adottano, come accennato in precedenza, alcune piccole accortezze.

• I nomi delle etichette dei criteri devono sempre coincidere con i nomi delle etichette dell’elenco dati. In caso contrario il filtro viene invalidato. Per fare questo è possibile collegare le celle (ad esempio, copiare le etichette dall’elenco ed incollarle come collegamento sulla riga dei criteri (una delle opzioni di incolla speciale).

• Sia l’elenco dati che l’elenco dei criteri devono essere dinamici ovvero vedere in automatico le eventuali righe in un secondo momento. La soluzione è formattare entrambi gli elenchi come tabella. La soluzione non è, tuttavia, valida per l’elenco criteri se bisogna ripetere due volte l’etichetta (come nel nostro esempio con l’etichetta Importo) perché la tabella non ammette due intestazioni con lo stesso nome.

• Nel caso di criteri testuali, può capitare che una voce da filtrare sia digitata in modo non corretto. Niente di più facile, ad esempio, che un nome come Coho Vineyard sia scritto male. La soluzione migliore è prevedere nell’elenco dei criteri, dei menu a tendina da cui scegliere il testo da filtrare.



La figura mostra la schermata che appare dopo aver lanciato il comando del filtro avanzato (il mouse deve trovarsi in una cella qualsiasi dell’elenco). Le azioni da compiere sono 3:

1. La sezione Azione consente la scelta se filtrare l’elenco sul posto o avvalersi dell’opzione, probabilmente più affascinante, di copiare l’elenco filtrato in un’altra posizione. L’unico limite è che le celle su cui copiare devono trovarsi nello stesso foglio di lavoro. Basta indicare la prima cella nella sezione Copia in che si trova più sotto. Nell’esempio, è la cella O1.

2. Nella sezione Intervallo elenco si determina l’elenco contenente i dati da filtrare. L’intervallo è sempre corretto, se non ci sono righe o colonne vuote. Prestare attenzione che l’intervallo selezionato sia la tabella e non un elenco dati (nell’esempio sarebbe A1:E925), per garantire l’estensione automatica ai nuovi dati.

3. Nella sezione Intervallo criteri si determina, invece, l’elenco dei criteri. Se non si hanno doppie intestazioni, fare attenzione che sia selezionata la tabella e non l’elenco dati altrimenti in caso di doppia intestazione deve apparire per forza l’intervallo celle dei criteri, in questo caso H1:L4. La sola accortezza sarà verificare che non ci sia alcuna riga vuota nell’elenco dei criteri. La riga vuota significherebbe assenza di criteri di filtro e, quindi, filtrare tutti i dati ovvero la tabella intera.

Dopo l’ok appare, nel nostro caso, la tabella filtrata a partire dalla cella O1, che include tutte le transazioni in base ai differenti criteri di filtro applicati.
In conclusione, non ci soffermiamo in questa sede sulla casella di controllo Copia univoca dei record, che sarà oggetto di future elaborazioni. Vale solo la pena di dire che il comando del filtro avanzato, per quanto interessante, è statico: se vengono modificati, cancellati o aggiunti dei valori nella tabella o nell’elenco dei criteri, la tabella filtrata non cambia e non si aggiorna. L’ostacolo potrebbe essere aggirato, ad esempio, registrando una macro che cancelli la prima tabella filtrata e ne crei una seconda in base alle modifiche apportate ai dati o ai criteri.


Se l'articolo è stato utile, seguimi sui Social networks cliccando i pulsanti in alto a destra di questa pagina.

Se vuoi condividere questo articolo nella tua Rete sociale, puoi utilizzare i bottoni Social a sinistra