INDEX MATCH 함수: 구문, 예제, 오류 해결
2026-10-12 업데이트 · 무료 · Excel 및 Google Sheets 지원
구문
=INDEX(return_array, MATCH(lookup_value, lookup_array, 0))빠른 답변
INDEX와 MATCH를 조합하면 한 열에서 값의 위치를 찾고 같은 행의 다른 열(왼쪽 열 포함)에서 값을 반환합니다: =INDEX($E$2:$E$500, MATCH(A2, $D$2:$D$500, 0)). 이 조합은 모든 Excel 버전과 Google Sheets에서 작동합니다. #N/A는 값이 없거나, 텍스트로 저장된 숫자이거나, 보이지 않는 공백이 붙어 있음을 의미합니다.
구문
=INDEX(return_array, MATCH(lookup_value, lookup_array, 0))| 인수 | 함수 | 의미 |
|---|---|---|
| return_array | INDEX | 값을 반환할 열. 조회 열의 왼쪽에 있어도 됩니다 — VLOOKUP 대비 최대 장점입니다. |
| lookup_value | MATCH | 찾을 값: 숫자, 텍스트, 날짜 또는 A2 같은 셀 참조. |
| lookup_array | MATCH | 검색할 열. 한 열만 — MATCH는 값이 아닌 “위치”를 반환합니다. |
| 0 | MATCH | 0 = 정확한 일치. 매번 반드시 쓰세요: 생략하면 MATCH가 근사 일치로 전환되어, 정렬되지 않은 데이터에서 잘못된 결과를 조용히 반환합니다. |
지역 설정에 따라 인수가 쉼표 대신 세미콜론으로 구분될 수 있습니다: =INDEX($E$2:$E$500; MATCH(A2; $D$2:$D$500; 0)). 소수점에 쉼표를 쓰는 국가의 표준 표기입니다.
기본 예제
=INDEX($E$2:$E$500, MATCH(A2, $D$2:$D$500, 0))일상 패턴: MATCH가 D 열에서 A2의 위치를 찾고, INDEX가 E 열의 같은 위치 값을 반환합니다. “A2가 D 열의 몇 번째 행인지 → E 열의 같은 행”으로 읽습니다.
=INDEX($D$2:$D$500, MATCH(A2, $E$2:$E$500, 0))왼쪽 조회: 반환 열이 조회 열의 왼쪽에 있습니다. VLOOKUP으로는 전혀 불가능한 시나리오로, INDEX/MATCH가 고급 사용자 표준이 된 이유입니다.
=INDEX($B$2:$E$50, MATCH(A2, $A$2:$A$50, 0), MATCH(C1, $B$1:$E$1, 0))양방향 조회: 첫 번째 MATCH가 행을, 두 번째 MATCH가 열을 찾고, INDEX가 교차점 셀을 반환합니다 — 보조 셀 없이 동적 교차 참조 표를 만듭니다.
INDEX 범위와 MATCH 범위의 행 수가 정확히 같아야 합니다. MATCH가 D2:D500을 검색하는데 INDEX가 E2:E300만 커버하면, 301~500행에서 일치할 때 #REF!가 발생합니다.
흔한 오류와 해결 방법
| 오류 | 가장 흔한 원인 | 해결 |
|---|---|---|
| #N/A | 값이 조회 열에 없음 — 또는 겉보기만 같음(텍스트로 저장된 숫자, 후행 또는 줄 바꿈 없는 공백). | =MATCH(A2, D2:D500, 0)를 단독 실행해 어느 쪽이 실패하는지 확인; VALUE()로 숫자 변환 후 보이지 않는 공백 정리, 또는 수식 전체를 IFERROR로 감쌉니다. |
| #REF! | INDEX 범위가 MATCH 범위보다 짧아, 찾은 위치가 범위 밖을 가리킴. | 두 범위를 정확히 같은 높이로 만드세요. 예: D2:D500과 E2:E500. |
| #NAME? | INDEX 또는 MATCH 철자 오류 — 글자 하나 빠지거나 공백 하나만으로도 발생합니다. | =INDEX( 와 =MATCH( 를 입력하고 자동 완성으로 이름을 완성하세요. |
| #VALUE! | MATCH 인수가 뒤바뀜: 범위가 먼저, 값이 나중에. | 순서는 MATCH(값, 범위, 0) — 찾을 값이 먼저, 검색할 열이 나중입니다. |
웹에서 복사한 후행 공백과 줄 바꿈 없는 공백도 여기서 가장 교활한 #N/A 원인입니다: MATCH에게 “NYC ”와 “NYC”는 다른 문자열입니다. 조회 전에 열 전체를 한 번에 정리하세요.
INDEX MATCH vs VLOOKUP
| INDEX MATCH | VLOOKUP | |
|---|---|---|
| 지원 버전 | 모든 Excel 버전(Google Sheets 포함) | 모든 Excel 버전(Google Sheets 포함) |
| 키 열 왼쪽 조회 | 가능 | 불가 |
| 열 삽입 후에도 작동 | 작동 — 범위가 독립된 열을 가리킴 | 고장 — 고정된 열 번호가 밀릴 수 있음 |
| 정확한 일치 | MATCH에 0을 씀 | FALSE를 직접 추가(기본값은 근사 일치!) |
| 다중 열 반환 | 불가 — 수식 하나당 값 하나 | 불가 — 수식 하나당 값 하나 |
| 양방향 조회 | 가능 — INDEX + MATCH + MATCH | 불가 |
공유 통합 문서에서는 VLOOKUP 대신 INDEX MATCH를 우선하세요: 왼쪽 조회가 가능하고 열 삽입에도 끊기지 않습니다. Microsoft 365에서는 XLOOKUP이 이 장점들을 단일 함수로 묶었습니다 — 동작은 같고, 기억할 이름은 하나입니다.
Google Sheets에서 INDEX MATCH
Google Sheets는 INDEX와 MATCH를 Excel과 동일한 인수로 완전히 지원하므로, 위 수식은 그대로 붙여넣을 수 있습니다. 스프레드시트 앱 간 호환성이 가장 높은 조회 패턴입니다.
- 마지막 0(정확한 일치)은 Sheets에서도 똑같이 중요합니다 — 생략하면 조용히 근사 일치로 전환됩니다.
- 소수점에 쉼표를 쓰는 지역 설정(유럽과 라틴아메리카 대부분)에서는 인수 사이에 세미콜론을 씁니다: =INDEX($E$2:$E$500; MATCH(A2; $D$2:$D$500; 0)). Excel도 같습니다.
- Google Sheets에도 Excel 2021+와 같은 규칙의 XLOOKUP이 있습니다; INDEX/MATCH는 모든 구버전 파일에서 정상적으로 열리는 버전입니다.
- 양방향 조회 INDEX/MATCH/MATCH는 양쪽 앱에서 동일하게 작동합니다 — 매트릭스 형태의 가격표, 환율표에 유용합니다.
제한 사항과 고급 팁
- 단계별 디버깅: 먼저 MATCH만 단독 실행. 숫자가 반환되면 문제는 INDEX, #N/A가 반환되면 조회 열에 있습니다.
- MATCH의 0은 절대 생략하지 마세요 — 정렬되지 않은 데이터에서 근사 일치는 그럴듯하지만 잘못된 결과를 반환하는 가장 위험한 오류입니다.
- 채우기 핸들(선택 영역 모서리의 작은 사각형)을 더블클릭하면 한 번에 마지막 행까지 수식을 복사할 수 있습니다.
- $로 범위를 고정($D$2:$D$500)하면 수식을 복사해도 조회 열이 옆으로 미끄러지지 않습니다.
- 양방향 조회에서는 MATCH를 MATCH 안에 넣어 INDEX의 열 인수로 사용합니다 — 매트릭스 형태 교차표를 대체합니다.
단일 값이 아니라 다른 파일에서 여러 열을 가져와야 하나요? 그것은 조회가 아니라 표 조인입니다: 아래 무료 도구가 수식 없이 처리합니다.
관련 도구
관련 함수
자주 묻는 질문
INDEX MATCH는 Excel에서 무엇을 하나요?
MATCH가 한 열에서 값의 위치를 찾고, INDEX가 다른 열의 같은 위치 값을 반환합니다 — 양방향 모두 가능하며, 0을 붙이면 정확한 일치입니다. 왼쪽 조회처럼 VLOOKUP으로는 할 수 없는 조회를 실현하는 클래식 조합입니다.
INDEX MATCH가 #N/A를 반환하는 이유는?
값이 조회 열에 없거나 — 또는 겉보기만 같습니다: 숫자가 텍스트로 저장되었거나, 보이지 않는 후행 공백·줄 바꿈 없는 공백이 붙어 있습니다. MATCH 부분만 단독 실행해 어느 쪽이 실패하는지 확인한 뒤, VALUE()로 숫자를 변환하거나 공백을 정리하세요.
INDEX MATCH로 왼쪽을 조회하려면?
INDEX의 첫 번째 인수에 반환 열을 놓고, MATCH로 아무 열이나 검색합니다: =INDEX($D$2:$D$500, MATCH(A2, $E$2:$E$500, 0))는 E 열을 검색해 D 열의 값을 반환합니다. VLOOKUP으로는 전혀 불가능합니다.
MATCH에 0을 써야 하는 이유는?
세 번째 인수가 일치 유형을 결정합니다. 0 = 정확한 일치. 생략하면 MATCH가 근사 일치로 전환되어, 정렬된 데이터를 가정하고 조용히 잘못된 행을 반환합니다 — 겉보기엔 아무 문제가 없어 보이는 가장 위험한 INDEX MATCH 실수입니다.
INDEX MATCH가 VLOOKUP보다 나은가요?
공유 파일이라면 그렇습니다: 왼쪽 조회가 가능하고, 열 삽입에도 견디며, 양방향 조회도 됩니다. VLOOKUP은 초보자에게 더 읽기 쉽습니다. Microsoft 365에서는 XLOOKUP이 단일 함수로 INDEX MATCH의 모든 장점을 제공합니다.
INDEX MATCH로 여러 열을 한 번에 반환할 수 있나요?
아니요 — INDEX MATCH 수식 하나는 값을 하나만 반환하므로, 열마다 수식을 작성(또는 옆으로 드래그)해야 합니다. 여러 열을 한 번에 가져오려면 다중 열 반환 범위를 쓰는 XLOOKUP이나 표 조인 도구가 더 적합합니다.
INDEX MATCH는 Google Sheets에서 작동하나요?
네 — Sheets는 두 함수를 Excel과 동일한 인수로 지원하며, 정확한 일치를 위한 마지막 0도 포함입니다. 달라지는 것은 인수 구분 기호뿐: 소수점에 쉼표를 쓰는 지역 설정에서는 세미콜론을 사용합니다.
내 파일로 직접 해볼 준비가 되셨나요?
두 Excel 테이블을 키로 결합 열기 — 무료