SpreadsheetFormulas
beginnerVLOOKUP

VLOOKUP with an Exact Match

You have an ID, name, or code in one table and need to pull matching details — a price, a department, an email — from another table.

Quick formula
=VLOOKUP(E2,A2:B10,2,FALSE)
Sample input
1ProductPrice
2Notebook4.50
3Stapler12.00
4Monitor189.00
5Desk Lamp34.00
Result
1LookupResult
2Monitor189.00
3Stapler12.00

Excel & Google Sheets

=VLOOKUP(E2,A2:B10,2,FALSE)

This formula works in both Excel and Google Sheets.

How it works

VLOOKUP searches the first column of the range A2:B10 for the value in E2. When it finds an exact match, it returns the value from the 2nd column of that range. The FALSE at the end is critical: it forces an exact match. Without it, VLOOKUP assumes your data is sorted and returns the nearest smaller value — which silently produces wrong answers on unsorted data.

E2
The value you're looking up — an ID, a name, a SKU.
A2:B10
The lookup table. VLOOKUP only searches its first column (A).
2
Which column of the table to return — column B is the 2nd column of A2:B10.
FALSE
Require an exact match. Never omit this on unsorted data.

When to use it

Use VLOOKUP when the value you're matching on sits to the left of the value you want returned. If it sits to the right, use XLOOKUP or INDEX + MATCH instead.

Common mistakes

  • Omitting the FALSE argument.

    VLOOKUP defaults to approximate match and returns wrong values on unsorted data. Always add FALSE for exact matching.

  • Counting the return column from column A of the sheet instead of the first column of your range.

    The column number is relative to the lookup range. In VLOOKUP(E2,C2:F10,2,FALSE), column 2 is D, not B.

  • The lookup range shifts when you copy the formula down.

    Lock the table with absolute references: =VLOOKUP(E2,$A$2:$B$10,2,FALSE).

Did this formula help?

Engine-verified against the sample data aboveLast reviewed 2026-07-08