Formula Guide

The Excel VLOOKUP Function
explained simply

VLOOKUP is the most tested formula in Excel job interviews. Here is the complete guide — syntax, examples, mistakes, and when to use XLOOKUP instead.

ExcelPro · 6 min read · Updated June 2026
Contents
  1. What does VLOOKUP do?
  2. Syntax
  3. 6 real examples
  4. Common mistakes
  5. VLOOKUP vs XLOOKUP
  6. FAQ

What does VLOOKUP do?

VLOOKUP looks down the first column of a table, finds a matching value, and returns something from the same row in another column. The V stands for "vertical" — it searches vertically down a column.

Think of it like a phonebook. You look up a name (the search value), and VLOOKUP returns the corresponding phone number (the return value) from a different column on the same row.

VLOOKUP is one of the most searched Excel formulas on the internet — and one of the most commonly tested in job interviews and Excel assessments.

Syntax

=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
ArgumentDescription
lookup_value requiredThe value to search for. Can be a value, text, or cell reference.
table_array requiredThe range that contains your data. The lookup value must be in the first column.
col_index_num requiredThe column number to return the result from. 1 = first column, 2 = second column, etc.
range_lookup optionalFALSE or 0 for exact match (almost always what you want). TRUE for approximate match.

6 real examples

Example 1
Find a product price

Product names are in column A, prices in column B. Look up the price for "Coffee".

=VLOOKUP("Coffee", A2:B10, 2, 0)

The 2 means return the value from the 2nd column. The 0 means exact match.

Example 2
Look up from a cell reference (dynamic)

Instead of typing the search value directly, reference a cell. Change E2 and the result updates automatically.

=VLOOKUP(E2, A2:C100, 3, 0)
Example 3
Lock the table range with absolute references

When copying VLOOKUP down a column, lock the table range so it doesn't shift.

=VLOOKUP(E2, $A$2:$C$100, 3, 0)

The $ signs lock the range. Without them, the table range shifts as you copy the formula down.

Example 4
Handle missing values with IFERROR

When VLOOKUP can't find a value it returns #N/A. Wrap in IFERROR for a cleaner result.

=IFERROR(VLOOKUP(E2, $A$2:$C$100, 3, 0), "Not found")
Example 5
Look up from another sheet
=VLOOKUP(A2, PriceList!$A:$C, 2, 0)

Reference another sheet by typing its name followed by an exclamation mark before the range.

Example 6
Return multiple columns

Use multiple VLOOKUP formulas, each with a different col_index_num.

=VLOOKUP(E2, $A$2:$D$100, 2, 0) ← column 2 =VLOOKUP(E2, $A$2:$D$100, 3, 0) ← column 3

Common mistakes

⚠️ Lookup value not in first column

VLOOKUP only searches the first column of your table_array. If the value you're searching is in column C but your table starts at column A, the formula returns wrong results. Use INDEX MATCH or XLOOKUP if you need to search a column that isn't first.

⚠️ Range_lookup left blank (defaults to TRUE)

If you omit the last argument, VLOOKUP defaults to TRUE (approximate match). This works only when data is sorted ascending and often returns wrong results on unsorted data. Always explicitly type 0 or FALSE for exact match.

⚠️ Column number breaks when columns are inserted

If someone inserts a column into your table, the col_index_num is now wrong. Use XLOOKUP or INDEX MATCH if column stability matters.

VLOOKUP vs XLOOKUP — which should you use?

If you're on Excel 2019 or Microsoft 365, use XLOOKUP. It replaces VLOOKUP with a cleaner syntax, can look in any direction, handles missing values natively, and doesn't break when columns are inserted.

Only use VLOOKUP if you're sharing files with people on older Excel versions, or if you need to maintain compatibility with Google Sheets.

FAQ

Can VLOOKUP return a value to the left?
No. VLOOKUP can only return values to the right of the lookup column. For left lookups use INDEX MATCH or XLOOKUP.
Why does VLOOKUP return #N/A?
#N/A means the lookup value wasn't found. Common causes: extra spaces (fix with TRIM), different capitalisation (VLOOKUP is case-insensitive but check for other differences), or the value genuinely doesn't exist in the table.
Can VLOOKUP look up multiple values at once?
Not directly. You need a separate VLOOKUP for each lookup. Consider using XLOOKUP with a range return, or a PivotTable for bulk lookups.
Is VLOOKUP case sensitive?
No. VLOOKUP treats "apple", "Apple", and "APPLE" as identical. If you need case-sensitive lookup, use INDEX with EXACT and MATCH.

Practise VLOOKUP live

ExcelPro has VLOOKUP exercises in every specialist track — real data, instant feedback, free to start.

Try VLOOKUP exercises →

Related formulas

XLOOKUP INDEX MATCH IFERROR MATCH SUMIF IF