cellio

VLOOKUP in Excel: A Simple Guide With Examples

Learn VLOOKUP step by step: the four arguments, exact vs approximate match, locking the table with $, and fixing #N/A. Plus when to use XLOOKUP instead.

By Ayoub Farid · · 2 min read

VLOOKUP is the most searched Excel function for a reason: almost every job involves finding a value in a table. The price of a product code. The department of an employee ID. The grade for a score. Here's how it works, without the jargon.

What VLOOKUP does

It looks for a value in the first column of a table, finds that row, and returns the value from a column you choose to the right.

Syntax

=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
ArgumentPlain English
lookup_valueWhat you're looking for (e.g. "P-104")
table_arrayThe table, with the lookup column first
col_index_numWhich column to return, counting from 1
range_lookupFALSE for exact match (use this 95% of the time)

Example

ABC
1CodeProductPrice
2P-101Espresso2.50
3P-102Latte3.50
4P-103Tea2.00

With "P-102" in F2:

=VLOOKUP(F2,A2:C4,3,FALSE)   → 3.50

Column 3 of the table is Price. Change 3 to 2 to get "Latte".

Lock the table before filling down

If you look up a whole list of codes and fill the formula down, the table range will shift (A3:C5, A4:C6…) and lookups at the bottom fail. Lock it:

=VLOOKUP(F2,$A$2:$C$4,3,FALSE)

This is the number-one VLOOKUP mistake in job tests. See absolute references.

Exact vs approximate match

  • FALSE (or 0): exact match. Returns #N/A if not found. Use for codes, names, IDs.
  • TRUE (or omitted): approximate. Finds the largest value not greater than the lookup value. Only for sorted bands like tax brackets or grade thresholds.

Leaving the last argument out means TRUE, which silently returns wrong answers on unsorted data. Always type FALSE unless you mean bands.

Handle "not found"

=IFERROR(VLOOKUP(F2,$A$2:$C$100,3,FALSE),"Not found")

See IFERROR. If you get #N/A when the value is there, read VLOOKUP not working.

Lookup from another sheet

=VLOOKUP(A2,Prices!$A$2:$C$500,3,FALSE)

VLOOKUP's limits

  • It can only look right. If the value you want is left of the lookup column, use INDEX MATCH or XLOOKUP.
  • The column number breaks if someone inserts a column in the table.
  • It returns only the first match.

That's why Microsoft introduced XLOOKUP. Compare them in XLOOKUP vs VLOOKUP. Still, VLOOKUP works in every Excel version and is still expected in many job tests, so learn both.

Practise it

Lookups (VLOOKUP, XLOOKUP, INDEX/MATCH) are a coming unit in Cellio. The live units already train the part people get wrong: locking ranges with $ before filling down.

Frequently asked questions

How do I do a VLOOKUP in Excel?

=VLOOKUP(what, table, column number, FALSE), e.g. =VLOOKUP(F2,$A$2:$C$100,3,FALSE).

Why does VLOOKUP return #N/A?

The value isn't found exactly: extra spaces, numbers stored as text, or the value isn't in the first column of the table.

What does FALSE mean in VLOOKUP?

Exact match. TRUE means approximate match on sorted data.

Should I use VLOOKUP or XLOOKUP?

XLOOKUP if everyone uses Excel 2021, Microsoft 365 or Google Sheets. VLOOKUP if files must work in older versions.

Keep reading