Vai al contenuto

FILTRO

La funzione FILTRO in Excel

La funzione FILTRO è utilizzata per restituire un intervallo dinamico a seconda di alcune condizioni. La funzione è compatibile con le ultime versioni di Excel (dalla 2021 in poi) e risulta una delle più utilizzate fra le matrici dinamiche a causa della sua flessibilità.


La notazione su Excel della funzione è:

=FILTRO(matrice;includi;[se_vuoto])

Quindi per procedere ci serviranno:
– un intervallo di partenza (la matrice). In linea di massima sarebbe ideale partire da una tabella, in modo da avere piena flessibilità poi lato formula
– dei parametri per filtrare l’intervallo di partenza (includi). Come vedremo, questi possono essere svariati
– l’indicazione (facoltativa) di quale valore inserire nel caso non vi siano riferimenti


COME_USARE_FILTRO_MICROSOFT_EXCEL_COPERTINA_450

Esempio funzione FILTRO Excel

COME_USARE_FILTRO_EXCEL_365_TABELLA_PARTENZA

Filtrare su Excel con un solo parametro

In questo caso vogliamo filtrare il nostro database, la tabella TBL, unicamente prendendo i clienti di una certa regione:

=FILTRO(TBL;TBL[REGIONE]=H5;””)

Stiamo dicendo che vogliamo tutta la tabella (TBL) solo quando la regione è pari a H5. Se non abbiamo clienti in quella regione, troveremo il valore vuoto.

Filtrare su Excel con due parametri

Se volessimo filtrare il nostro database considerando i clienti di una certa regione che hanno anche comprato un certo brand:

=FILTRO(TBL;
(TBL[REGIONE]=M5)*(TBL[BRAND]=N5);
“”)

Vogliamo nuovamente tutta la tabella – ma solo quando la regione è quella in M5 e il brand è il valore inserito in N5. L’asterisco (*) indica che entrambe le condizioni devono essere vere: Excel fa un test per ognuna delle righe, indicando se il risultato sia VERO oppure FALSO. Il risultato sarà VERO se, ad esempio, la regione è uguale a quella in M5, altrimenti sarà FALSO.

Seguendo le regole di algebra booleana, questi valori sono corrispondenti a 1 (VERO) e 0 ( FALSO). Moltiplicandoli fra di loro, Excel considererà solo il caso nel quale siano entrambi VERO (1*1) ignorando invece tutte le altre combinazioni.


Filtrare su Excel con due parametri (O)

In questo caso abbiamo sempre due parametri, ma è sufficiente che uno solo sia VERO:

=FILTRO(TBL;
(TBL[REGIONE]=R5)+
(TBL[BRAND]=S5);
“”)

Rispetto alla formula precedente, l’unica differenza è la presenza del più (+) dato che in questo caso siamo molto più ampi come condizioni. Andranno bene tutte le righe con almeno un VERO (1) mentre ignoreremo i casi nei quali entrambe le condizioni siano FALSO (0+0 = 0).


Filtrare su Excel i valori sopra una certa soglia

In questo caso vogliamo restituire i valori di fatturato almeno pari a Y5:

=FILTRO(TBL;TBL[FATTURATO]>=Y5;””)

La condizione >=Y5 ci indica che avremo solamente le righe della tabella con un fatturato almeno pari a Y5. Chiaramente avremmo potuto mettere ulteriori condizioni, ad esempio (TBL[FATTURATO]>=Y5)*(TBL[FATTURATO]<Y12) se avessimo inserito un parametro superiore in Y12 e così via.


Filtrare su Excel una sola colonna

Se non volessimo tutto il database, potremmo cambiare leggermente la formula così:

=FILTRO(TBL[CLIENTE];
TBL[FATTURATO]>=AD5;
“”)

TBL[CLIENTE] ci indica che vogliamo sia restituita unicamente la colonna CLIENTE del nostro database.


Filtrare su Excel una colonna se contiene uno di una serie di valori

In questo caso la formula si complica un po’ dato che stiamo considerando se la tabella presenta i clienti inseriti nelle celle G5, H5 e I5:

=FILTRO(TBL;VAL.NUMERO(CONFRONTA(TBL[CLIENTE];G5:I5;0));””)

La funzione CONFRONTA trova la posizione di questi valori nella tabella di partenza. Se Costa fosse presente nella terza posizione, allora il risultato sarebbe 3 e così via.

VAL.NUMERO sta certificando che abbiamo effettivamente trovato un valore, dato che indica semplicemente una condizione VERO o FALSO se il valore risultante da CONFRONTA è un numero – in sostanza, se il valore esiste in una qualunque posizione del database, allora sarà restituito (dato che CONFRONTA restituisce un numero e quindi VAL.NUMERO sarà VERO). In caso contrario, non avremo alcun risultato.


Filtrare su Excel colonne non adiacenti

Volendo ulteriormente complicare la formula, potremmo prendere solamente 3 colonne della tabella iniziale in questo modo:

=FILTRO(SCEGLI.COL(TBL;1;2;4);VAL.NUMERO(CONFRONTA(TBL[CLIENTE];G5:I5;0));””)

SCEGLI.COL ci permette di scegliere le colonne che ci interessano dell’intervallo di partenza. In questo caso sono 4 colonne in totale, dalle quali togliamo la terza – la formula sarà quindi SCEGLI.COL(TBL;1;2;4) e ci restituirà unicamente tre colonne, in questo caso.



Scopri altri casi pratici per la funzione FILTRO: