Fall ResetAmazon USFall reset deals: check better picks before checkoutAmazon US: today's deals, useful picks and quick comparisons.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowFall ResetAmazon USWork and home upgrades are worth comparing todayAmazon US: today's deals, useful picks and quick comparisons.See Picks×
Skip to content
Blog

How to Use the VLOOKUP Function in Excel (With Exact-Match Examples)

By TheFinanceBase Team9 min read

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.

VLOOKUP searches for a value in the first column of a range and returns related information from another column in the same row. For most lookups involving IDs, product codes, names, prices, or departments, use an exact-match formula such as:

=VLOOKUP(A2,$F$2:$H$100,3,FALSE)

The final FALSE is important: it tells Excel to require an exact match instead of making an approximate guess.

What VLOOKUP does

VLOOKUP is useful when one worksheet area contains a value you know—such as a product ID—and another table contains that value alongside information you want to retrieve.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
A: Product ID B: Product C: Price returned
P-100 Keyboard 49.99
P-101 Mouse 19.99
D: Product ID E: Product F: Price
P-100 Keyboard 49.99
P-101 Mouse 19.99

To return the price for the product ID in A2, enter this formula in C2:

#1 Best Overall
Sale
The Microsoft Office 365 Bible: The Most Updated and Complete Guide to Excel, Word, PowerPoint, Outlook, OneNote, OneDrive, Teams, Access, and Publisher from Beginners to Advanced
  • The Microsoft Office 365 Bible: The Most Updated and Complete Guide to Excel, Word, PowerPoint, Outlook, OneNote, OneDrive, Teams, Access, and Publisher from Beginners to Advanced
  • ABIS BOOK
=VLOOKUP(A2,$D$2:$F$3,3,FALSE)

Excel looks for A2 in column D, finds the matching row, and returns the value from column F. The result for P-100 is 49.99.

VLOOKUP searches only from left to right. The lookup column must be the first column of the selected range, and the function cannot directly return a value from a column to its left. See Microsoft’s VLOOKUP documentation for the official syntax and behavior.

VLOOKUP syntax explained

=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
Argument What it means Example
lookup_value The value Excel should find. A2
table_array The range containing both the lookup column and the return column. $F$2:$H$100
col_index_num The return column’s position within the selected range, counted from left to right. 3
range_lookup Whether Excel should find an exact or approximate match. FALSE

lookup_value

This can be a cell reference, number, or text string:

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
=VLOOKUP(A2,$F$2:$H$100,2,FALSE)
=VLOOKUP(102,$F$2:$H$100,2,FALSE)
=VLOOKUP("P-100",$F$2:$H$100,3,FALSE)

The lookup value must exist—or be eligible to match—in the first column of table_array.

table_array

This is the complete range containing the search column and the answer column. In $F$2:$H$100, Excel searches column F and can return values from F, G, or H.

The dollar signs make the range absolute. That prevents it from moving when you copy the formula down. Without them, a formula copied to the next row could start searching F3:H101 instead of the intended fixed reference table.

col_index_num

This number counts columns inside the selected range, not columns across the worksheet. For $F$2:$H$100:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • F is column 1.
  • G is column 2.
  • H is column 3.

Therefore, 3 means “return the third column of the selected range,” which happens to be worksheet column H. It does not mean worksheet column C or a globally numbered column F.

range_lookup

Use:

  • FALSE or 0 for an exact match.
  • TRUE or 1 for an approximate match.

If you omit this argument, Excel uses approximate matching. That is a frequent cause of incorrect results, so do not leave it blank unless approximate matching is intentional.

How to create a basic VLOOKUP formula

  1. Put the value to search for in a cell, such as A2.
  2. Arrange the reference table so its lookup column is on the left.
  3. Select the cell where the result should appear.
  4. Type =VLOOKUP(.
  5. Select the lookup value, such as A2, and type a comma.
  6. Select the full lookup table, including the search and return columns.
  7. Press F4 to make the range absolute, or add dollar signs manually.
  8. Enter the return column’s position within that range.
  9. Enter FALSE for an exact match.
  10. Close the parenthesis and press Enter.

For example:

=VLOOKUP(A2,$F$2:$H$100,3,FALSE)

This searches for the value in A2 in column F and returns the corresponding value from column H.

Exact-match VLOOKUP: the safest default

Exact matching is appropriate for product IDs, employee IDs, invoice numbers, customer numbers, ZIP codes, email addresses, SKU codes, and other discrete identifiers. The lookup column does not need to be sorted.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
=VLOOKUP(A2,$F$2:$H$100,3,FALSE)

0 is equivalent to FALSE:

=VLOOKUP(A2,$F$2:$H$100,3,0)

Using FALSE makes the formula’s intent easier to read. It also protects you from the approximate-match default that applies when the fourth argument is omitted.

Copying a VLOOKUP formula safely

Suppose:

  • A2:A10 contains product IDs.
  • F2:F100 contains product IDs in the reference table.
  • H2:H100 contains prices.

Enter this in B2:

=VLOOKUP(A2,$F$2:$H$100,3,FALSE)

When copied to B3, it should become:

=VLOOKUP(A3,$F$2:$H$100,3,FALSE)

The lookup reference changes from A2 to A3, while the reference table remains fixed. If the table range changes as you fill down, add absolute references with F4.

Approximate-match VLOOKUP

Approximate matching is designed for thresholds and bands rather than unique IDs. Typical uses include tax brackets, commission rates, shipping bands, grades, discounts, and score classifications.

Minimum score Rating
0 Fail
60 Pass
80 Good
90 Excellent

With the table in F2:G5, use:

=VLOOKUP(A2,$F$2:$G$5,2,TRUE)

If A2 is 85, Excel returns Good. It finds the largest value in the first column that is less than or equal to 85.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The first column must be sorted in ascending order for approximate matching. An unsorted threshold table can produce an unexpected result. Also remember that this formula is approximate:

=VLOOKUP(A2,$F$2:$G$5)

That is because omitting range_lookup makes Excel use TRUE. Treat the omission as a deliberate design choice, not a shortcut. Microsoft explains the exact and approximate match rules in its guidance on correcting VLOOKUP #N/A errors.

Using VLOOKUP with an Excel Table

Formatting the reference data as an Excel Table can make a workbook easier to maintain. If the table is named Products, a structured-reference formula could be:

=VLOOKUP([@ProductID],Products,3,FALSE)

The column number still counts from the table’s leftmost column. If the table’s column order changes, a manually counted index can become difficult to audit.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a readable formula that names the lookup and return columns separately, XLOOKUP is usually clearer:

=XLOOKUP([@ProductID],Products[ProductID],Products[Price],"Not found")

Why VLOOKUP returns an error or the wrong result

Result Likely cause What to check
#N/A No match, inconsistent data, or an unsuitable approximate lookup. Check the key, data type, spaces, leading zeros, and match mode.
#REF! The column index exceeds the selected range. Count the columns inside table_array.
#VALUE! Invalid range or a column index of zero or less. Check the range and index argument.
#NAME? Text was entered without quotation marks, or a function name is misspelled. Put literal text in quotation marks and check spelling.
Wrong value Approximate matching was used unintentionally. Add FALSE and verify the formula’s range.

Fixing #N/A

Work through this checklist:

  1. Confirm that the key exists in the first column of the selected range.
  2. Confirm that both values use the same data type. A number such as 123 may not match text such as "123".
  3. Remove unwanted spaces with TRIM where appropriate:
=TRIM(A2)

Nonprinting characters can sometimes be removed with:

=CLEAN(A2)

Use these as data-cleaning steps rather than assuming the lookup formula itself is defective. For a numeric conversion, VALUE(A2) may help; to convert a value to text, A2&"" can help. Apply the same treatment consistently to both sides of the lookup.

Codes with leading zeros, such as 00125, should normally remain text in both tables. If one side is converted to a number, the zeros may disappear and the values may no longer match.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Dates can also fail to match when the displayed dates look identical but their stored values differ—for example, when one value includes a time component. Exact matching compares the underlying values, not only their formatting.

Using IFERROR carefully

To display a friendlier message:

=IFERROR(VLOOKUP(A2,$F$2:$H$100,3,FALSE),"Not found")

IFERROR catches errors including #N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, and #NULL!. However, it does not repair the underlying data or formula. It can hide an incorrectly selected range or an unexpected error, so use it after validating the lookup.

Fixing #REF!

If the range is F:H, it contains only three columns. This formula is invalid:

=VLOOKUP(A2,$F$2:$H$100,4,FALSE)

Change the index to a number from 1 to 3, or expand the selected range to include a fourth column.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Fixing #VALUE!

Check that the table range is valid and contains at least one column. The index must be at least 1. Also inspect any nested formula that supplies the lookup value or column index.

Important edge cases

Duplicate lookup values

If the lookup column contains duplicate keys, VLOOKUP is not a way to return every matching row. Make the identifier unique if one result is intended. If you need all matching records and your Excel version supports dynamic arrays, consider:

=FILTER($G$2:$H$100,$F$2:$F$100=A2,"Not found")

A successful lookup can also return a blank-looking result when the matched return cell is empty. A visually blank result does not necessarily mean that the lookup failed.

Wildcards in text lookups

VLOOKUP supports wildcards for text searches. An asterisk matches any sequence of characters, while a question mark matches one character:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
=VLOOKUP("AB*",$F$2:$H$100,3,FALSE)

To search for a literal asterisk, escape it with a tilde:

=VLOOKUP("AB~*",$F$2:$H$100,3,FALSE)

Entire-column references

An explicit range is usually easier to audit than a full-column reference. In some modern Excel scenarios, using an entire column with implicit intersection can also contribute to a #SPILL! issue. Prefer:

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

over using an entire-column lookup value such as A:A when a single-cell reference is intended.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

VLOOKUP’s main limitations

  • Left-to-right only: the lookup column must be the leftmost column of the selected range.
  • Manual column counting: the return index can become fragile when columns are inserted or reordered.
  • One result per lookup: duplicate keys do not produce a list of all matches.
  • Approximate matching requires sorted data: an unsorted threshold table can return a wrong result.
  • Data quality matters: spaces, hidden characters, number-versus-text differences, and lost leading zeros can prevent matches.

VLOOKUP versus XLOOKUP, INDEX/MATCH, FILTER, and Power Query

Requirement Best fit Why
Legacy compatibility and a conventional left-to-right lookup VLOOKUP Widely recognized and supported in older workbooks.
Exact matching with flexible direction XLOOKUP Defaults to exact matching, can look left or right, and supports a not-found result.
Separate row and column logic in older Excel INDEX/MATCH Flexible lookup construction without relying on XLOOKUP.
Multiple matching rows FILTER Returns all qualifying records in supported dynamic-array versions.
Recurring imports, cleaning, or joins Power Query Creates a refreshable data workflow instead of relying on copied formulas.

XLOOKUP

For a new workbook where compatibility permits, XLOOKUP avoids the leftmost-column restriction and manual index counting:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
=XLOOKUP(A2,$F$2:$F$100,$H$2:$H$100,"Not found")

Its syntax is:

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])

Microsoft describes XLOOKUP as an improved alternative to VLOOKUP, but check the target workbook’s Excel version and deployment environment before replacing a legacy formula. Do not assume every Excel installation supports it.

INDEX/MATCH

This combination is useful when the workbook already uses it or when older-version compatibility and flexible lookup direction matter:

=INDEX($H$2:$H$100,MATCH(A2,$F$2:$F$100,0))

The 0 in MATCH requests an exact match. Microsoft’s comparison of VLOOKUP, INDEX, MATCH, and XLOOKUP provides further guidance on choosing among these approaches.

Which Excel option do you need?

You do not need a paid Microsoft 365 plan merely to use VLOOKUP. Microsoft provides Excel for the web at no charge with a Microsoft account, although browser and desktop capabilities are not identical.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Occasional practice or basic browser work: Free Excel for the web may be sufficient.
  • Desktop Excel, offline access, and current features: Microsoft 365 Personal may be suitable.
  • Several household users: Microsoft 365 Family may make sense if each person needs access.
  • No recurring subscription: Office 2024 is a one-time-purchase option, but major-version upgrades are not included in the same way as a Microsoft 365 subscription.

Availability, plan terms, and prices vary by country and can change. Compare the current Microsoft offers before buying. Microsoft’s explanation of the difference between free web apps and Microsoft 365 subscriptions is a useful starting point.

Compatibility

Microsoft currently lists VLOOKUP for Microsoft 365, Excel 2024, Excel 2021, Excel 2019, and Excel 2016, including Mac editions. Existing workbooks may therefore continue to use VLOOKUP even when newer formulas are available. Check the workbook’s target users before introducing XLOOKUP or dynamic-array functions.

For a straightforward exact lookup, the practical formula remains:

=VLOOKUP(A2,$F$2:$H$100,3,FALSE)

Verify four things before copying it: the key is in the range’s first column, the range is anchored, the return index is counted within the range, and the fourth argument explicitly states the intended match type.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Written by TheFinanceBase Team

The Team behind TheFinanceBase.

Add your note

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

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
PC Slower Than It Used to Be?Free scan - under a minute

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.