SheetHelper logo
excelvlookuplookupformulas2026-07-24

VLOOKUP with Multiple Criteria in Excel

VLOOKUP can use multiple criteria if you combine the criteria into one lookup key. The safest method is to add a helper column to the source table, join the criteria there, and then run a normal exact-match VLOOKUP.

Example:

=VLOOKUP(H2&"|"&I2,$A$2:$E$100,5,FALSE)

This formula looks up a combined key, such as P-205|West, and returns the matching value from the fifth column of the lookup table.

1. When You Need Multiple Criteria

A normal VLOOKUP works when one value uniquely identifies the row. Multiple criteria are needed when one value is not enough.

Situation Why one criterion fails
Product ID plus Region The same product can have different prices by region
Employee ID plus Month The same employee appears in many monthly rows
Customer plus Order Date The same customer has multiple orders
SKU plus Supplier The same SKU may come from different suppliers

If Product ID alone appears more than once, VLOOKUP returns the first match it finds. That may be the wrong row. Multiple criteria make the lookup key unique.

For broader wrong-result problems, see the VLOOKUP troubleshooting guide.

2. Example Data

Suppose your price table looks like this:

Helper Key Product ID Region Product Name Price
P-101|East P-101 East Keyboard 45
P-101|West P-101 West Keyboard 48
P-205|East P-205 East Monitor 220
P-205|West P-205 West Monitor 235
P-318|East P-318 East Mouse 25

And your lookup area is:

Product ID Region Price
P-205 West

The goal is to return 235, not the first P-205 row.

3. Best Method: Use a Helper Column

Add a helper column to the left of your source table. In A2, combine the criteria with a delimiter:

=B2&"|"&C2

Fill the helper formula down the source table.

Product ID Region Helper Key
P-101 East P-101|East
P-101 West P-101|West
P-205 West P-205|West

Then use VLOOKUP against the helper key:

=VLOOKUP(H2&"|"&I2,$A$2:$E$100,5,FALSE)

Why this works:

Formula part Meaning
`H2&" "&I2`
$A$2:$E$100 Starts with the helper key column
5 Returns Price from the fifth column of the lookup table
FALSE Requires an exact match

This is the best method for shared workbooks because it is visible, easy to audit, and compatible with older Excel versions.

4. Why the Delimiter Matters

Do not simply join values without a separator:

=B2&C2

That can create accidental matches. For example:

Criteria 1 Criteria 2 Joined without delimiter
AB 12 AB12
A B12 AB12

Both rows become AB12, even though the criteria are different.

Use a delimiter that does not appear in your data:

=B2&"|"&C2

Good delimiters include |, ~, or another character your IDs and names never use.

5. Lock the Lookup Table Before Copying Down

When you copy the multiple-criteria VLOOKUP down a report, lock the source range:

=VLOOKUP(H2&"|"&I2,$A$2:$E$100,5,FALSE)

Without dollar signs, the lookup table can shift:

=VLOOKUP(H2&"|"&I2,A2:E100,5,FALSE)

That may work in the first row and fail later.

If absolute references are still fuzzy, review Excel cell references before filling formulas down a long list.

6. Multiple Criteria Across Sheets

The same helper-column method works when the source table is on another worksheet.

If your source table is on a sheet named Prices, use:

=VLOOKUP(A2&"|"&B2,Prices!$A$2:$E$100,5,FALSE)

If the sheet name has spaces, wrap it in single quotes:

=VLOOKUP(A2&"|"&B2,'Price List'!$A$2:$E$100,5,FALSE)

For more sheet-reference examples, see How to Use VLOOKUP Across Sheets in Excel.

7. Without a Helper Column: Use CHOOSE

You can build the combined lookup key inside the formula with CHOOSE:

=VLOOKUP(H2&"|"&I2,CHOOSE({1,2},$A$2:$A$100&"|"&$B$2:$B$100,$D$2:$D$100),2,FALSE)

This creates a temporary two-column lookup table:

Temporary column What it contains
Column 1 Product ID and Region joined together
Column 2 The value to return

Use this method when you cannot edit the source table. Otherwise, a helper column is usually easier to maintain.

Compatibility note: in older Excel versions, this may need to be confirmed as an array formula with Ctrl+Shift+Enter. In Microsoft 365 and newer Excel versions, it usually calculates normally.

8. XLOOKUP Alternative for Multiple Criteria

If you have Microsoft 365 or Excel 2021 or later, XLOOKUP is cleaner:

=XLOOKUP(1,($A$2:$A$100=H2)*($B$2:$B$100=I2),$D$2:$D$100,"Not found")

This formula tests both conditions and returns the row where both are true.

Part Meaning
$A$2:$A$100=H2 Product ID matches
$B$2:$B$100=I2 Region matches
* Both conditions must be true
$D$2:$D$100 Return the matching price

Use XLOOKUP for new modern workbooks. Use VLOOKUP with a helper column when compatibility matters or when your team is more comfortable auditing helper columns.

For a full modern lookup walkthrough, see Excel XLOOKUP tutorial.

9. INDEX MATCH Alternative

INDEX MATCH can also handle multiple criteria:

=INDEX($D$2:$D$100,MATCH(1,($A$2:$A$100=H2)*($B$2:$B$100=I2),0))

This is useful when:

Need Why INDEX MATCH helps
Older Excel compatibility It works in versions that do not have XLOOKUP
Return value is to the left INDEX can return from any column
Existing workbook uses INDEX MATCH Keeping one formula style may be easier

For a side-by-side decision guide, use VLOOKUP vs XLOOKUP vs INDEX MATCH.

10. Troubleshooting Multiple-Criteria VLOOKUP

Use this checklist when the formula returns #N/A or the wrong result:

Symptom Likely cause Fix
#N/A Combined key does not match exactly Compare the helper key with the lookup key
Wrong row The combined key is not unique Add another criterion or check duplicates
Works once but fails when copied Lookup range shifted Use absolute references
Looks identical but does not match Extra spaces or text-number mismatch Clean both criteria columns
Formula is too hard to audit No helper column Add a visible helper key

To check whether the lookup key exists, use COUNTIF:

=COUNTIF($A$2:$A$100,H2&"|"&I2)

If the result is 0, VLOOKUP cannot find that combined key. If the result is greater than 1, your combined key is not unique.

If the key exists but VLOOKUP still returns #N/A, use How to Fix VLOOKUP #N/A in Excel to check spaces, data types, exact match settings, and table range issues.

For more counting examples, see the Excel COUNT function tutorial.

11. Practice Example

Use this source table:

Helper Key Employee ID Month Department Bonus
E-101|Jan E-101 Jan Sales 450
E-101|Feb E-101 Feb Sales 520
E-205|Jan E-205 Jan Support 300
E-205|Feb E-205 Feb Support 340

Tasks:

Lookup Employee Lookup Month Goal
E-101 Feb Return the bonus
E-205 Jan Return the department
E-999 Jan Return Not found

Reference answers:

Task Formula
Return bonus `=VLOOKUP(H2&"
Return department `=VLOOKUP(H3&"
Return Not found `=IFNA(VLOOKUP(H4&"

12. Summary

The best way to use VLOOKUP with multiple criteria is to create a helper column that combines the criteria into one unique key. Use a delimiter, lock the lookup range, and use exact match with FALSE. If you cannot add a helper column, use CHOOSE, XLOOKUP, or INDEX MATCH depending on your Excel version and workbook compatibility needs.

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