How to filter out rows with a certain value in Excel
Formula (Excel and Google Sheets)
=FILTER(A2:D9,C2:C9<>G1)Use the not-equal operator in FILTER: =FILTER(A2:D9,C2:C9<>G1) returns every row except those whose status is in G1.
- Result on the example
- a 5-row list that spills from F3 in
F3 - Works in
- Excel 2021, 2024 and Microsoft 365
- Google Sheets
- Same formula
See it work
The formula is already in F3. Change any input and the result updates, or edit the formula to experiment.
How it works
<> means "is not equal to", so C2:C9<>G1 is TRUE for every task that isn't Done. FILTER keeps those rows. Because the status to hide sits in a cell, the same formula can hide "Not started" instead.
=FILTER(A2:D9,C2:C9<>G1)Result{5 rows × 4 cols} "Book venue", "Raj", "In progress", 46150, …
A2:D98 rows × 4 cols: "Draft budget", "Ana", "Done", 5/4/2026, …A range: 8 rows × 4 columns.
C2:C98 rows × 1 col: "Done", "In progress", "Not started", "Done", …A range: 8 cells in one column.
G1"Done"The value in G1.
C2:C9<>G1{8 rows × 1 col} FALSE, TRUE, TRUE, FALSE, …The <> operator tests whether they differ.
FILTER(A2:D9,C2:C9<>G1){5 rows × 4 cols} "Book venue", "Raj", "In progress", 46150, …FILTER: Rows of a range that meet every condition. #N/A when none match.- range
A2:D98 rows × 4 cols: "Draft budget", "Ana", "Done", 5/4/2026, … - condition1
C2:C9<>G1{8 rows × 1 col} FALSE, TRUE, TRUE, FALSE, …
- range
In Google Sheets
The same formula works in Google Sheets: =FILTER(A2:D9,C2:C9<>G1). We ran it in Google Sheets mode on the same data and it returns the same results, spilling 5 rows.
Other ways to do it
Each one was run on the same example sheet.
| Formula | Result | When to use it |
|---|---|---|
| =FILTER(A2:D9,NOT(C2:C9=G1)) | spills 5 × 4 | NOT flips a test. Same result; some people find it easier to read. |
| =FILTER(A2:D9,(C2:C9<>G1)*(B2:B9<>"Raj")) | spills 4 × 4Different result | Multiply two not-equal tests to leave out two things at once. Also hides Raj's tasks. |
Common mistakes
- Comparisons ignore case, so "done" and "Done" are both hidden. Use
NOT(EXACT(C2:C9,G1))if case matters. - Blank statuses are kept, since an empty cell is not equal to "Done". Multiply by
(C2:C9<>"")to drop them too.
Try it yourself
Same data, empty answer cell. Your formula is graded instantly, then re-checked on changed data, so a typed-in number won't pass.
Filter out rows with a certain value
F3, list every task (columns A to D) except the ones whose status is the value in G1.Questions
How do I exclude rows that contain a word?
Test with SEARCH and flip it: =FILTER(A2:D9,NOT(ISNUMBER(SEARCH("Done",C2:C9)))).
How do I exclude a list of values?
Count each row in the list and keep zeros: =FILTER(A2:D9,COUNTIF(G1:G3,C2:C9)=0).
Checked by running on 2026-10-30: every formula and result on this page was calculated by the Spreadsheet Practice formula engine, in both Excel and Google Sheets modes.