홈 › 엑셀 수식·함수

INDEX·MATCH 수식 만들기

MATCH가 몇 번째인지 찾고, INDEX가 그 위치의 값을 꺼내요. 두 함수를 합치면 VLOOKUP의 제약이 없어져요.

파일은 서버로 전송되지 않고 내 기기에서만 처리돼요

INDEX·MATCH, 위치를 찾고 꺼내는 두 단계

INDEX·MATCH는 언제 쓰나요

코드는 오른쪽 끝 열에 있고 이름은 왼쪽 열에 있는 표에서 코드로 이름을 찾아야 할 때, 월별·지점별 표에서 ‘3월의 부산’처럼 가로와 세로를 동시에 맞춰야 할 때, 지역과 제품 두 가지가 모두 맞는 행을 골라야 할 때 INDEX·MATCH를 써요. XLOOKUP이 없는 엑셀 2016·2019를 쓰는 회사가 아직 많아서, 어느 PC에서 열어도 똑같이 돌아가는 찾기 수식이 필요할 때 가장 믿을 만한 조합이에요.

사용 방법

찾기 종류 탭에 1번, 가져올 범위 칸에 2번 표시가 붙은 화면

1단계찾기 종류 고르고 범위 넣기

  1. ① 탭에서 찾기 종류를 골라요. 탭마다 필요한 칸이 달라서 고르면 입력 칸이 바뀌어요.
  2. ② 왼쪽 찾기 탭의 예시는 H열 코드로 C열 담당자를 가져와요. 가져올 범위가 찾을 범위보다 왼쪽이어도 그대로 두면 돼요.
여러 조건 입력 칸 묶음에 3번, 결과 수식 카드에 4번 표시가 붙은 화면

2단계여러 조건 탭 써 보기

  1. ③ 조건 범위와 값을 두 쌍 넣어요. 예시는 지역이 서울이고 제품이 노트북인 행의 금액을 찾아요.
  2. ④ 첫 카드는 두 조건을 모두 만족하는 첫 행의 값을, 둘째 카드는 같은 조건의 SUMIFS 합계를 보여 줘요.

두 함수가 나눠 맡는 일

MATCH는 값을 꺼내지 않고 ‘몇 번째에 있는지’만 숫자로 알려 줘요. INDEX는 거꾸로 위치 번호를 받아 그 자리의 값을 꺼내요. 이 둘을 이어 붙이면 찾는 열과 꺼내는 열이 완전히 분리돼서, 열 순서나 위치에 묶이지 않아요.

MATCH로 위치를 찾고 INDEX로 꺼내기MATCH가 H2:H11에서 SE-2026-002의 위치 2를 찾고, INDEX가 C2:C11의 2번째 값 이서연을 꺼내요. 가져올 열 C가 찾을 열 H보다 왼쪽에 있어도 돼요.① 위치 찾기 → ② 그 위치 값 꺼내기C 담당자H 코드2김민준SE-2026-0013이서연SE-2026-0024박도윤SE-2026-0035최하은SE-2026-0046김민준SE-2026-005… 11행까지 이어져요① MATCHSE-2026-002는H열 2번째② INDEXC열 2번째 값= 이서연=INDEX(C2:C11, MATCH("SE-2026-002", H2:H11, 0))가져올 열이 왼쪽에 있어도 상관없어요
MATCH가 2를 돌려주면 INDEX가 C열 두 번째 값을 꺼내요.

가로·세로 찾기는 MATCH를 두 번 써서 행 번호와 열 번호를 모두 구해요. 도구 기본값인 표 A1:H11, 행 기준 SE-2026-003, 열 제목 ‘담당자’를 넣으면 4행 C열의 ‘박도윤’이 나와요. 이때 표 전체와 두 기준 범위가 모두 1행(머리글)에서 시작해야 번호가 어긋나지 않아요.

탭만드는 수식 모양결과
왼쪽·일반 찾기INDEX(가져올 열, MATCH(값, 찾을 열, 0))값 하나
가로·세로 찾기INDEX(표, MATCH(행), MATCH(열))표 안의 칸 하나
여러 조건INDEX(가져올 열, MATCH(1, INDEX(조건1*조건2, 0), 0))첫 번째로 맞는 행

주의할 점

더 궁금한 점

조건을 세 개로 늘릴 수 있나요?

도구 칸은 두 쌍이지만, 만들어진 수식의 (조건1)*(조건2) 뒤에 *(범위3="값3")을 이어 붙이면 세 조건 모두 맞는 행을 찾아요.

엑셀 365에 있는 XMATCH와는 무엇이 다른가요?

XMATCH는 MATCH와 같은 일을 하되 기본이 정확히 일치이고 뒤에서부터 찾기도 돼요. 대신 엑셀 2021·365에서만 돌아가서, 여러 버전이 섞인 사무실이라면 이 도구가 만드는 MATCH 수식이 더 안전해요.

가로·세로 찾기에서 #N/A가 나와요.

열 제목 칸에 적은 글자가 제목 행과 정확히 같은지 봐 주세요. ‘담당자 ’처럼 끝에 공백이 하나만 있어도 MATCH는 다른 값으로 봐요.

INDEX와 MATCH를 합치면

MATCH(찾을 값, 범위, 0)은 범위에서 찾을 값이 몇 번째에 있는지 숫자로 알려 줘요. INDEX(범위, n)은 범위의 n번째 값을 꺼내요. 그래서 =INDEX(가져올 열, MATCH(찾을 값, 찾을 열, 0))은 ‘찾을 열에서 값의 위치를 찾고, 가져올 열의 같은 위치 값을 꺼내라’는 뜻이 돼요.

VLOOKUP 대신 쓰는 이유

가로·세로 찾기

INDEX에 행 번호와 열 번호를 모두 주면 표 한가운데 값을 꺼낼 수 있어요. 행 번호는 세로 기준 열에서, 열 번호는 제목 행에서 MATCH로 각각 찾아요. 월별·지점별 표에서 ‘3월 부산’ 값을 찾을 때 편해요.

여러 조건으로 찾기

(조건1)*(조건2)는 두 조건을 모두 만족하는 행만 1이 되는 배열이에요. 여기서 MATCH로 1의 위치를 찾으면 돼요. 가운데 INDEX(…,0)는 옛 엑셀에서도 Ctrl+Shift+Enter 없이 배열 계산을 하게 해 주는 장치예요. 찾을 값이 숫자이고 맞는 행이 하나뿐이라면 SUMIFS로도 같은 값을 얻을 수 있어요.

범위에는 $를 붙여 고정해 두면 아래로 수식을 복사해도 범위가 밀리지 않아요.

예제 파일에는 연습 데이터와 함께 만든 수식이 들어 있어요. 찾을 값을 바꿔 보며 결과가 어떻게 바뀌는지 확인하면 INDEX·MATCH의 원리를 금방 익힐 수 있어요.

자주 묻는 질문

MATCH의 마지막 0은 꼭 써야 하나요?

네. 0은 정확히 일치예요. 비우면 1(근사값)로 계산돼 정렬되지 않은 표에서 틀린 값을 가져와요.

#N/A가 나와요.

찾는 값이 범위에 없거나 공백·형식이 달라서예요. 앞뒤 공백은 TRIM으로, 숫자·텍스트 형식 차이는 숫자 텍스트 변환으로 맞추세요. 화면에 안 보이게 하려면 IFERROR로 감싸요.

같은 값이 여러 개면 어느 것을 가져오나요?

위에서부터 첫 번째 값을 가져와요. 마지막 값이 필요하면 =LOOKUP(2,1/(H2:H11=값),C2:C11) 방식이나 XLOOKUP의 검색 방향 -1을 쓰세요.

함께 쓰면 좋은 도구