Sintassi FILTER (condizione OR condizione)?


32

Sto usando FILTER()per visualizzare un valore dal foglio 2 in cui le Namecolonne corrispondono.

Il mio problema è dove voglio:

=FILTER(Sheet2!A:F, Sheet2!A:A="Combat Medic" OR Sheet2!A:A="Universal")

come ORrisulta in un errore.

Qual è la sintassi corretta?
Devo usare un QUERY()invece?


1
Potresti anche trovare utile questo: Fogli di lavoro Google:
filtra

Risposte:


43

Utilizzare la seguente formula per ottenere la query desiderata.

Formula

=FILTER(A:A;(A:A="Combat Medic")+(A:A="Universal"))

spiegato

Nel riferimento è spiegato da Achab che +e *può essere usato come espressione booleana, come ORe AND.

La soluzione con IFERROR(vedi cronologia delle revisioni) non serve in questo caso, a meno che tu non voglia trovare una stringa particolare:

=FILTER(Sheet2!A:F;IFERROR(FIND("Combat";A:A);0) + IFERROR(FIND("Uni";A:A);0))

Qui IFERRORritorna 0quando non viene trovato nulla, facendo funzionare ancora la formula.

Immagine dello schermo

inserisci qui la descrizione dell'immagine

Esempio

Ho modificato il file di esempio per contenere entrambe le soluzioni: Filter with Boolean

Riferimento

Forum dei prodotti Google, espressioni booleane


Interessante! Potresti approfondire come IFERROR(...) + IFERROR(...) funziona?
Vidar S. Ramdal,

dov'è la documentazione che '+' può essere usato come OR booleano?
Chris Morris,


@JacobJanTuinstra Grazie Jacob. C'è qualche documentazione ufficiale?
Chris Morris,

-1

=FILTER(A:F, REGEXMATCH(A:A, "Combat Medic|Universal"))

0


=QUERY(A:F, " where A matches 'Combat Medic|Universal'", 0)

0

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.