SheetHelper logo
excelfiltervlookupformulasdynamic arrays2026-07-27

Excel FILTER vs VLOOKUP

Use VLOOKUP when you need one value from the first matching row. Use FILTER when you need all matching rows or a reusable report block that updates automatically.

Quick examples:

=VLOOKUP(H2,A2:E7,5,FALSE)
=FILTER(A2:E7,B2:B7=H2,"No matching rows")

The first formula returns one value, such as the Amount for one order. The second formula returns every row where Region matches the value in H2.

For a full FILTER walkthrough, see the Excel FILTER function tutorial. If an existing VLOOKUP formula is failing, start with the VLOOKUP troubleshooting guide.

1. FILTER vs VLOOKUP: Quick Difference

Both formulas can help you find matching data, but they return different kinds of results.

Function Best For Returns Excel Support
VLOOKUP One simple lookup value One value from the first match Broad legacy support
FILTER Extracting matching records One or more rows or columns Modern dynamic array Excel

Use this quick decision table:

Need Better Choice
Return a price for one product ID VLOOKUP
Return all orders for a region FILTER
Support Excel 2016 or Excel 2019 VLOOKUP
Build a dynamic report list FILTER
Return only the first match VLOOKUP
Return every matching row FILTER
Search by one key and return one field VLOOKUP
Search by criteria and spill a table FILTER

The practical rule is: VLOOKUP is a lookup formula, while FILTER is an extraction formula.

2. Example Data

Suppose you have this order table:

Order ID Region Product Status Amount
O-101 East Basic Paid 420
O-102 West Pro Pending 680
O-103 East Pro Paid 750
O-104 North Basic Paid 310
O-105 East Pro Pending 920
O-106 West Basic Paid 510

Assume cell H2 contains East or an order ID, depending on the example.

3. Use VLOOKUP to Return One Matching Value

VLOOKUP searches the first column of a table and returns a value from a column to the right.

To return the Amount for order ID O-103 in H2:

=VLOOKUP(H2,A2:E7,5,FALSE)

Result: 750

How it works:

Argument Example Meaning
lookup_value H2 The value to find
table_array A2:E7 The table to search
col_index_num 5 Return the fifth column from the table
FALSE exact match Do not use approximate matching

Use VLOOKUP when one matching value is enough and your lookup column is the first column in the selected table.

4. Use FILTER to Return Matching Rows

FILTER returns every row that matches a condition.

To return all East region orders:

=FILTER(A2:E7,B2:B7="East","No matching rows")

Result:

Order ID Region Product Status Amount
O-101 East Basic Paid 420
O-103 East Pro Paid 750
O-105 East Pro Pending 920

The formula spills the matching rows into nearby cells. If the source data changes, the result updates automatically.

Use FILTER when your answer is a list, not a single cell.

5. When FILTER Is Better Than VLOOKUP

FILTER is better when you need a repeatable extracted list.

Situation Why FILTER Fits
Return all matching rows VLOOKUP stops at the first match
Build a report controlled by a dropdown cell FILTER spills the matching records
Keep multiple columns together FILTER can return the whole row
Use AND or OR criteria FILTER can combine Boolean tests
Return a dynamic subset of a table FILTER updates as data changes

Example: return paid East orders:

=FILTER(A2:E7,(B2:B7="East")*(D2:D7="Paid"),"No matching rows")

Result:

Order ID Region Product Status Amount
O-101 East Basic Paid 420
O-103 East Pro Paid 750

This is difficult to do cleanly with VLOOKUP because VLOOKUP is designed to return one value, not a filtered table.

6. When VLOOKUP Is Better Than FILTER

VLOOKUP is still useful, especially in older or simple workbooks.

Situation Why VLOOKUP Fits
You only need one value The formula is compact
Users have older Excel versions FILTER is not available in Excel 2016 or Excel 2019
The lookup key is in the first column VLOOKUP's structure matches the table
A workbook already uses VLOOKUP consistently Rewriting working formulas may add risk
You need a simple formula for a shared legacy file Many users recognize VLOOKUP

Example: return Product for one order ID:

=VLOOKUP(H2,A2:E7,3,FALSE)

If the workbook must support older Excel versions, VLOOKUP or INDEX MATCH is usually safer than FILTER.

7. FILTER vs VLOOKUP for Multiple Matches

This is the biggest difference between the two formulas.

If several rows match, VLOOKUP returns only the first matching row:

=VLOOKUP("East",B2:E7,4,FALSE)

Result: 420

That is the amount from the first East row in the table.

FILTER returns all matching East rows:

=FILTER(A2:E7,B2:B7="East","No matching rows")

Result: three East rows.

If you want a list, use FILTER. If you want one value from the first match, use VLOOKUP or a modern lookup function such as XLOOKUP.

8. FILTER vs VLOOKUP for Multiple Criteria

VLOOKUP can use multiple criteria, but it usually needs a helper column.

Example helper key:

=B2&"|"&D2

Then VLOOKUP can search the combined key:

=VLOOKUP(H2&"|"&I2,A2:F7,6,FALSE)

FILTER can test multiple criteria directly:

=FILTER(A2:E7,(B2:B7=H2)*(D2:D7=I2),"No matching rows")

Use VLOOKUP when you need one value from a helper-key lookup. Use FILTER when you want all records that match the criteria.

For a deeper VLOOKUP helper-key workflow, see VLOOKUP with Multiple Criteria in Excel.

9. FILTER vs VLOOKUP vs XLOOKUP

If you have modern Excel and only need one value, XLOOKUP is usually cleaner than VLOOKUP.

Need Best Starting Point
One value in a legacy workbook VLOOKUP
One value in modern Excel XLOOKUP
All matching rows FILTER
Left lookup XLOOKUP or INDEX MATCH
Dynamic report block FILTER

VLOOKUP and XLOOKUP are lookup formulas. FILTER is a row-extraction formula. That difference matters more than which formula is newer.

For a broader lookup comparison, see VLOOKUP vs XLOOKUP vs INDEX MATCH.

10. Common FILTER vs VLOOKUP Mistakes

Mistake 1: Expecting VLOOKUP to Return Every Match

VLOOKUP returns one value from the first matching row. It does not spill a list of all matches.

Use FILTER when the result should contain several rows.

Mistake 2: Expecting FILTER to Work in Older Excel

FILTER is a dynamic array function. If your workbook must support Excel 2016 or Excel 2019 users, use VLOOKUP, INDEX MATCH, PivotTables, Power Query, or manual filters instead.

Mistake 3: Blocking the FILTER Spill Range

FILTER needs empty cells where the result can spill. If the output area is blocked, Excel returns #SPILL!.

Clear the cells below and to the right of the formula, or move the formula to a blank area.

Mistake 4: Using the Wrong Include Range Size

The include range must line up with the array being filtered.

Correct:

=FILTER(A2:E7,B2:B7="East","No matching rows")

Wrong:

=FILTER(A2:E7,B2:B6="East","No matching rows")

The second formula checks only five rows while the returned array has six rows.

Mistake 5: Forgetting Exact Match in VLOOKUP

For IDs, names, and most business records, use FALSE as the fourth argument:

=VLOOKUP(H2,A2:E7,5,FALSE)

Without exact match, VLOOKUP can return surprising results.

11. Practice Example

Using the sample table from section 2, answer these questions:

Question Formula
Return Amount for order ID in H2 =VLOOKUP(H2,A2:E7,5,FALSE)
Return all East rows =FILTER(A2:E7,B2:B7="East","No matching rows")
Return paid East rows =FILTER(A2:E7,(B2:B7="East")*(D2:D7="Paid"),"No matching rows")
Return Product for one order ID =VLOOKUP(H2,A2:E7,3,FALSE)

Reference answers when H2 is O-103 for VLOOKUP examples:

Question Expected Result
Return Amount for O-103 750
Return all East rows 3 rows
Return paid East rows 2 rows
Return Product for O-103 Pro

12. Summary

Use VLOOKUP when you need one value from a simple lookup table, especially in a legacy workbook. Use FILTER when you need all matching rows, dynamic report blocks, or criteria-driven extracted lists. If you are using modern Excel and only need one value, also consider XLOOKUP. The most important question is not which function is newer; it is whether your result should be one cell or a spilled table.

Need help fixing a formula?

Share the formula, a small sample table, and the result you expected. This free beta helps us learn which Excel problems readers actually need solved.

Ask for formula help