[260회 라이브 공지] 이번 주(3/28) 토요일 라이브는 휴강입니다. 즐거운 주말 연휴 보내세요! 오빠두엑셀 `2026 무료 챌린지` 오픈! 완주하고 수료증 받아가세요! 5년 연속 IT분야 베스트셀러! 「 진짜쓰는 실무엑셀 」로 2026년 공부 끝내기 엑셀이 막히셨나요? Q&A 게시판에서 바로 해결하세요.
메뉴

엑셀 INDEX MATCH 함수 기초 총정리 :: 엑셀 함수 공식

범위에서 값을 찾아 같은 행의 다른 값을 반환하는 엑셀 함수 공식의 동작원리와 실전 예제를 알아봅니다.

작성자 :
오빠두엑셀
최종 수정일 : 2023. 07. 10. 14:41
URL 복사
메모 남기기 : (52)

INDEX MATCH 함수의 기본 사용법:: 엑셀 함수 공식 

목차
요약 및 관련글

INDEX/MATCH 함수는 VLOOKUP 함수의 상위호한 함수입니다. INDEX MATCH 공식을 사용하면 VLOOKUP 함수로는 제한되던 다양한 고급기능을 구현할 수 있습니다.

  1. 범위의 왼쪽으로 값을 참조할 수 있습니다 (VLOOKUP 함수는 오른쪽으로만 참조가능)
  2. 여러개의 조건을 만족하는 값을 참조할 수 있습니다. : VLOOKUP 다중조건 공식
  3. 값을 참조하여 이미지를 불러올 수 있습니다 :  VLOOKUP 이미지 불러오기 공식
  4. 그 외 VLOOKUP 함수의 구현 불가능한 부분을 극복하여 응용할 수 있습니다.
영상강의

INDEX/MATCH 함수를 보다 쉽게 설명해드리기 위한 영상강의가 준비되어 있습니다.


예제파일 다운로드

오빠두엑셀의 강의 예제파일은 여러분을 위해 자유롭게 제공하고 있습니다.

  • [엑셀공식] INDEX/MATCH 함수 기초 사용법
    예제파일

INDEX/MATCH 함수 공식
INDEX MATCH 함수 설명
INDEX MATCH 공식은 VLOOKUP 함수와 동일한 동작을 합니다.

함수 공식의 쉬운 이해를 위해 VLOOKUP 함수 구문을 우선 살펴봅니다.

= VLOOKUP ( 1]참조값, 2]검색범위, 3]열번호, [검색방식] )

INDEX/MATCH 함수의 구문은 아래와 같습니다.

= INDEX ( 3]출력범위, MATCH ( 1]참조값, 2]참조범위, 0 ) )
  • 1] 참조값
    : VLOOKUP함수의 1]참조값과 동일
  • 2] 참조범위
    : VLOOKUP함수 2]검색범위 첫번째열 (맨 좌측열)과 동일
  • 3] 출력범위
    : VLOOKUP함수 2]검색범위 열번호에 위치한 출력범위와 동일
관련 기초함수
INDEX/MATCH 함수공식 설명
  • INDEX/MATCH 함수는 VLOOKUP 함수 상위호환 공식으로, 직장인이 알아두면 실무에서 다양하게 활용할 수 있습니다. (VLOOKUP 함수에 대한 설명은 관련 포스트를 참고하세요.)
  • INDEX-MATCH 함수는 VLOOKUP 함수와 동일하게 동작합니다. 즉, 범위에서 값을 찾아 같은 행의 다른 항목을 반환합니다.
  • 오피스 365 버전을 사용중이시라면 XLOOKUP 함수로 더욱 쉽개 해결할 수 있습니다.  XLOOKUP 함수에 대한 자세한 설명은 관련 포스트를 참고하세요.
  • VLOOKUP함수를 사용할 경우 출력할 열의 열번호를 세야합니다. 하지만 INDEX-MATCH 함수를 사용하면 더이상 열번호를 세지 않아도 됩니다.
  • INDEX-MATCH 함수는 VLOOKUP 함수뿐만 아니라 HLOOKUP 함수(가로로조회)도 대체할 수 있습니다.
  • INDEX-MATCH 함수는 범위의 왼쪽으로도 조회할 수 있습니다.
  • 검색범위의 열이 추가되거나 삭제되어도 출력값의 변화가 없습니다.
  • VLOOKUP함수 다중조건 검색, 또는 VLOOKUP 함수 이미지 출력 같은 고급기능을 활용할 수 있습니다.
  • 그 외 다양한 INDEX MATCH 함수 고급사용법은 관련 포스트를 참고하세요.

실전예제로 INDEX/MATCH함수 알아보기

사용된 공식

=INDEX(B7:B15,MATCH(F7,C7:C15,0))

동작원리 알아보기

1. MATCH 함수로 F7(찾을값)이 C7:C15(참조범위)에서 몇번째 위치하는지 계산합니다.

= MATCH(F7, C7:C15, 0)
= 2
'// F7: 아메리카노, C7:C15: 제품명범위
'// MATCH(값, 범위, [일치옵션])
'// 아메리카노는 제품명범위에서 2번째 위치하므로 2를 반환합니다.
INDEX MATCH 함수 설명 1
MATCH 함수로 아메리카노의 위치를 반환합니다.

2. INDEX 함수로 B7:B15(출력범위)에서 2번째 위치하는 값을 반환합니다.

= INDEX(B7:B15,MATCH(F8,C7:C15,0))
= INDEX(B7:B15, 2)

= "커피"
'// INDEX(범위, 행번호, [열번호])
'// 출력범위에서 2번째에 위치한 값인 "커피"를 반환합니다.

INDEX MATCH 함수 설명
INDEX 함수로 카데고리 범위의 2번째 값을 반환합니다.

자주묻는질문

Q. 함수 결과값으로 #N/A 오류를 반환합니다.

INDEX/MATCH 함수로 #N/A 오류가 반환될 경우, 2가지 원인을 예상할 수 있습니다.

  1. MATCH 함수의 조건을 일치하는 값이 없어, MATCH 함수에서 #N/A 오류를 반환하는지 확인합니다. (대부분 이 문제로 오류가 발생합니다.)
    - MATCH 함수를 괄호를 포함하여 모두 드래그합니다.
    - 키보드 F9키를 누르면, MATCH 함수로 반환되는 결과값 또는 오류를 확인할 수 있습니다.
    엑셀 index match 함수 na 오류 설명
    함수를 드래그한 뒤 키보드 [F9]키를 눌러 결과값을 확인할 수 있습니다
  2. MATCH 함수의 검색옵션으로 0(정확히일치)가 아닌 1, -1 (크거나/작은값 유사일치)를 사용할 경우, MATCH 함수의 참조범위가 오름차순으로 정렬되어있는지 확인합니다.

마이크로소프트 홈페이지 MATCH 함수 설명 바로가기 >> 

댓글 52
4.9 (39개 평가)
UncleJ
UncleJ 2020.02.21 13:59
index와 match 함수를 이용하여 다중 조건으로 값 찾기를 해보았는데요... #value 에러가 납니다. match 함수를 f9으로 계산을 해주면 결과값이 나오고 정상적으로 처리가 되는데... 왜 함수식으로는 계산이 안될까요???
오빠두엑셀
오빠두엑셀 작성자 2020.02.22 06:56
안녕하세요~^-^
INDEX/MATCH 다중조건 함수는 배열수식이므로 Ctrl + Shift + Enter 로 입력하셔야 합니다.
아래 관련 포스트를 확인해보시겠어요?
https://www.oppadu.com/vlookup-함수-다중조건-검색/
감사합니다.
UncleJ
UncleJ 2020.02.22 10:14
즉각적인 답변 감사드립니다. 제가 배열수식에 대한 이해가 없었던 것 같습니다.
공부를 하면 할 수록 엑셀의 기능이 무궁무진함을 느낍니다. 많은 도움 받겠습니다.~~^^
guris
guris 2020.03.22 11:16
좋은 강의 감사합니다.
작은거목
작은거목 2020.03.25 06:53
깔끔한 설명 감사합니다.
작은거목
작은거목 2020.03.25 06:54
깔끔한 설명 감사합니다
붉은곰
붉은곰 2020.04.06 16:35
감사합니다
닥코드
닥코드 2020.04.07 14:19
항상 좋은 내용 감사합니다.
닥코드
닥코드 2020.04.08 10:14
좋은 내용 감사합니다.
JMON
JMON 2020.04.09 13:40
VLOOKUP 대신 많이 사용했던 함순데 XLOOKUP 사용하면서 갈아탔습니다
약돌한우
약돌한우 2020.04.15 00:24
좋은 자료 감사합니다.
양양
양양 2020.04.20 09:28
감사합니다!
이현진
이현진 2020.04.23 11:56
안녕하세요 유튜브로 구독하고있습니다. Vlookup 에서 궁금한게 한가지 있습니다.

보통 Vlookup은 한개의 열에 대해서 결과값을 구하기 위해 밑으로 드래그 하여 자동채우기를 사용하는데요,
오른쪽으로 드래그하여 다중 열에 대해서 열번호를 입력하여 결과값을 알고싶을때
열번호가 변동되게 할수는 없는건가요?
오빠두엑셀
오빠두엑셀 작성자 2020.04.23 13:24
안녕하세요?^^ 가능합니다.
VLOOKUP 함수를 이용하실경우, 아래 포스트를 참고해보시겠어요?
https://www.oppadu.com/%ec%97%91%ec%85%80-vlookup-%ed%95%a8%ec%88%98/#Q2
= VLOOKUP ( 찾을값, 참조범위, MATCH(머릿글, 머릿글범위,0), [일치옵션] )

공식을 이용하시면 해결되실겁니다.
답변이 도움이 되셨길 바랍니다.
감사합니다.