![](https://cdn.wiki-base.com/2558768/excel_formula_filter_contains_one_of_many__2.png.webp)
Formula generica
=FILTER(data,ISNUMBER(MATCH(rng1,rng2,0)),"No data")
Sommario
Per filtrare i dati in modo da includere solo i record in cui una colonna è uguale a uno dei tanti valori, è possibile utilizzare la funzione FILTER insieme alla funzione ISNUMBER e alla funzione MATCH. Nell'esempio mostrato, la formula in F5 è:
=FILTER(data,ISNUMBER(MATCH(color,list,0)),"No data")
dove "data" (B5: D15), "color" (C5: C15) e "list" (J5: J7) sono intervalli denominati.
Spiegazione
La funzione FILTER può filtrare i dati utilizzando un'espressione logica fornita come argomento "include". In questo esempio, questo argomento viene creato con un'espressione che utilizza le funzioni ISNUMBER e MATCH in questo modo:
=ISNUMBER(MATCH(color,list,0))
MATCH è configurato per cercare ogni colore in C5: C15 all'interno dell'intervallo più piccolo J5: J7. La funzione MATCH restituisce un array come questo:
(1;#N/A;#N/A;#N/A;2;3;2;#N/A;#N/A;#N/A;3)
I numeri di avviso corrispondono alla posizione dei colori "trovati" ("rosso", "blu" o "nero") e gli errori corrispondono alle righe in cui non è stato trovato un colore target. Per forzare un risultato TRUE o FALSE, questo array va nella funzione ISNUMBER, che restituisce:
(TRUE;FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;TRUE)
L'array sopra viene consegnato alla funzione FLITER come argomento include e FILTER restituisce solo le righe che corrispondono a un valore TRUE.
Con valori hardcoded
L'esempio sopra è stato creato con riferimenti di cella, in cui i colori target sono stati inseriti nell'intervallo J5: J7. Tuttavia, ma utilizzando una costante di matrice, puoi codificare i valori nella formula in questo modo con lo stesso risultato:
=FILTER(data,ISNUMBER(MATCH(color,("red","blue","black"),0)),"No data")