INDEX MATCH Two Criteria

There are two ways to “index match two criteria”: the quick way you copy and the durable way you understand. This page gives you both. The exact Excel answer is above; below, we build the small mental model that makes the fix stick, so the next variation of the same problem solves itself.

Exact answer

In Excel: use =INDEX(return_range, MATCH(lookup_value, lookup_range, 0))MATCH finds the row number of the lookup value and INDEX returns the value in that row from any column, left or right.

Syntax

=INDEX(return_range, MATCH(lookup_value, lookup_range, 0))

Arguments

ArgumentDescription
return_rangerequiredThe column you want a value returned from.
lookup_valuerequiredThe value MATCH searches for.
lookup_rangerequiredThe column MATCH searches through for the lookup value.
match_typeoptional0 for an exact match (embedded as the third argument of MATCH); 1 or -1 for approximate.

Related functions

VLOOKUPXLOOKUPHLOOKUP
Annotated stepsExcel
1

Decide the return_range — the column you want the answer from — and start with =INDEX(that range,.

2

Inside INDEX, open MATCH( and click the cell holding the value to find.

3

Select the column to search through as the second MATCH argument.

4

Type 0 as the third MATCH argument to force an exact match, then close both brackets.

5

Press Enter and fill the formula down; lock ranges with $ if you will copy it.

Ctrl+CthenCtrl+Shift+V+Cthen+Ctrl+VPaste values · WindowsMac

What this does

INDEX/MATCH pairs two functions to do a lookup that VLOOKUP cannot: MATCH returns the position of the lookup value within a column, and INDEX returns the cell at that position in whatever column you choose. Because the search column and the return column are independent, it can look to the left and it survives inserted or moved columns that would break a VLOOKUP col_index_num. Keep the inputs visible and clearly labelled and the whole thing stays auditable — anyone who opens the file later, including you, can see at a glance exactly what feeds the result and change one assumption without hunting through the formula. Treat “index match two criteria” as a small repeatable workflow rather than a one-off click you hope to remember next time. Use a small test block before the live file, so any surprise in the affected cells shows up while it is still harmless. When a formula is involved, keep the inputs labelled beside it, reference cells instead of typing values, and apply number formatting only after the result checks out. That turns a data step that keeps your analysis trustworthy into a method you can reuse, explain, and defend when the workbook leaves your screen.

A worked example

Names are in column C (C2:C100) and IDs in column A (A2:A100). To return the ID for the name in E2 — a value to the LEFT, which VLOOKUP cannot do: =INDEX(A2:A100, MATCH(E2, C2:C100, 0)). MATCH finds "Maria" in row 7 of the range and INDEX returns the ID in A8, for example 1042. INDEX/MATCH is the durable lookup professionals reach for when data is wide or volatile: it looks in any direction and does not break when columns shift. One habit worth forming early: name the cells that hold your inputs, so the formula reads in plain language instead of a string of cell addresses. A reviewer — or you in three months — can then follow the logic without decoding what B7 and D2 were supposed to mean, which is most of what makes a sheet maintainable.

In Google Sheets

If you are in Google Sheets rather than Excel, the good news is that the formula shown here is identical and the workflow barely changes — menus sit across the top instead of in a ribbon, and a few function names differ slightly, but anything you build here moves across with little or no rework. Nothing on this page is behind a login: the tool runs entirely in your browser, the formula is shown in full with one-click copy, and the steps work the same on Windows and Mac. That is the whole promise here — the exact answer, a way to prove it on your own numbers, and just enough context to make it stick. Here is the takeaway for “index match two criteria”: copy the answer if you are busy, but if you have a spare few minutes, rebuild the example in Excel yourself with the tool above open beside it. That single pass — type it, run it, watch the result move when you change an input — is what turns a formula you found into a technique you trust. Keep your inputs labelled and referenced, never hard-coded, and the same sheet stays correct and auditable as it grows. Done that way, you will not need to look this up again, and you will be the person others ask.

Common mistakes

  • Giving INDEX and MATCH ranges of different heights, so the row number from MATCH points at the wrong cell.
  • Forgetting the 0 in MATCH, which switches it to an approximate match and can return a wrong row.
  • Selecting the whole table for INDEX instead of a single return column, which forces a needless extra column-number argument.

Frequently asked questions

Why use INDEX/MATCH instead of VLOOKUP?

INDEX/MATCH can return columns to the left of the lookup column, and it keeps working when you insert or move columns because it references columns directly rather than by a counted index number.

What does the 0 in MATCH mean?

It requests an exact match. Without it, or with 1, MATCH does an approximate match that needs sorted data and can silently return the wrong position, so include 0 for normal lookups.

Is INDEX/MATCH faster than VLOOKUP?

On large sheets it can be, because it only scans the lookup column and the return column rather than the whole table array, though XLOOKUP is simpler still if your Excel version supports it.