Google Sheets VLOOKUP Not Working? Fix #N/A, #REF & Wrong Results

If your VLOOKUP in Google Sheets is returning #N/A, #REF!, or incorrect results, the issue is usually in your formula setup, data format, or lookup structure.

This guide shows exactly how to fix VLOOKUP errors step-by-step.

Google Sheets VLOOKUP Not Working

Intro

Your VLOOKUP in Google Sheets is returning #N/A, #REF!, or incorrect values.
This usually means something is wrong with your formula setup, data format, or lookup structure.

This guide fixes it step by step.

Why the Issue Happens

  • Lookup value doesn’t exist in the first column
  • Exact match not enforced (FALSE missing)
  • Text vs number mismatch
  • Extra spaces or hidden characters
  • Wrong column index
  • Lookup range shifting when dragged
  • Data not sorted (when using approximate match)
  • Duplicate values in lookup column

Step-by-Step Fixes

Step 1: Check Formula Structure

VLOOKUP must follow this format:

=VLOOKUP(search_key, range, index, [is_sorted])

Example:

=VLOOKUP(A2, Sheet2!A:B, 2, FALSE)

If your structure is wrong, fix this first.

Step 2: Force Exact Match

If you don’t use exact match, results can be wrong.

Fix:

=VLOOKUP(A2, A:B, 2, FALSE)

Never leave the last argument blank unless you want approximate matching.

Step 3: Ensure Lookup Column is FirstVLOOKUP only searches in the first column of the range.

Wrong:

=VLOOKUP(A2, B:C, 2, FALSE)

Correct:

=VLOOKUP(A2, A:C, 3, FALSE)

If your lookup value isn’t in the first column, VLOOKUP won’t work.

Step 4: Fix #N/A (Value Not Found)

If you see #N/A, the value isn’t matching.

Check:

  • Is the value actually present?
  • Are there formatting differences?

Use this to handle errors:

=IFERROR(VLOOKUP(A2, A:B, 2, FALSE), "Not Found")

Step 5: Fix Text vs Number Mismatch

This is a silent but common issue.

Example:

  • A2 = 123 (number)
  • Table = "123" (text)

Fix by converting:

=VLOOKUP(VALUE(A2), A:B, 2, FALSE)

or

=VLOOKUP(TEXT(A2, "0"), A:B, 2, FALSE)

Step 6: Remove Extra Spaces

Hidden spaces break matches.

Fix:

=VLOOKUP(TRIM(A2), A:B, 2, FALSE)

To clean a full column:

=ARRAYFORMULA(TRIM(A:A))

Step 7: Fix Column Index Errors (#REF!)

If index exceeds range, you get #REF!.

Wrong:

=VLOOKUP(A2, A:B, 3, FALSE)

Correct:

=VLOOKUP(A2, A:B, 2, FALSE)

Make sure index matches the column count in your range.

Step 8: Lock the Range

If results change when dragging formulas, your range is moving.

Fix:

=VLOOKUP(A2, $A$2:$B$100, 2, FALSE)

Use $ to lock the range.

Step 9: Handle Approximate Match Properly

If using:

=VLOOKUP(A2, A:B, 2, TRUE)

Then:

  • First column must be sorted ascending

If not, results will be incorrect.

If unsure, always use:

FALSE

Step 10: Handle Duplicates

VLOOKUP returns only the first match.

If duplicates exist, results may seem wrong.

Alternative:

=FILTER(B:B, A:A=A2)

This returns all matching values.

Common Mistakes

  • Leaving last argument blank (defaults to TRUE)
  • Using VLOOKUP when lookup column isn’t first
  • Ignoring text vs number mismatch
  • Copy-pasting data with hidden spaces
  • Not locking ranges
  • Using wrong column index
  • Expecting multiple results from VLOOKUP
  • Not checking if value actually exists

Pro Tips / Better Alternatives

Use XLOOKUP (Cleaner and More Flexible)

=XLOOKUP(A2, A:A, B:B)
  • No column index needed
  • Works left and right
  • Cleaner syntax

Use INDEX + MATCH (More Control)

=INDEX(B:B, MATCH(A2, A:A, 0))
  • More robust than VLOOKUP
  • Handles dynamic structures better

Use FILTER for Multiple Matches

=FILTER(B:B, A:A=A2)

Returns all matching results instead of just one.

Debug with EXACT

Check if two values truly match:

=EXACT(A2, A3)

Returns TRUE or FALSE.

Clean Data Before Using VLOOKUP

Use:

=TRIM()
=CLEAN()

Dirty data is a major cause of lookup failures.

Bottom Line

If VLOOKUP isn’t working, fix in this order:

  1. Use FALSE for exact match
  2. Ensure lookup column is first
  3. Match data types (text vs number)
  4. Remove extra spaces
  5. Check column index
  6. Lock your range

Once these are fixed, your VLOOKUP will work consistently and your model will stay reliable.
how about this

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top