FILTER evaluates the include argument against every row in array. Each row where include is TRUE is included in the output; rows where include is FALSE are skipped. The results spill into adjacent cells automatically — the output range expands or contracts as data changes. Do not put anything in the cells below or to the right of the formula cell — FILTER needs those empty to spill into them. A #SPILL! error means those cells are occupied. For AND logic, multiply two boolean arrays: (B2:B100="North")*(C2:C100>1000) is TRUE only where both conditions are true. For OR logic, add them: (B2:B100="North")+ (B2:B100="South") is TRUE where either condition is true. To filter by a value in another cell rather than a hard-coded value, reference the cell directly in the include condition — change that cell and the filtered output updates instantly. Combine FILTER with
SORT to return results in a specific order, or with
UNIQUE to return only distinct rows from the filtered output.