Excel · 조회

엑셀 MATCH

범위에서 값을 찾아 몇 번째 위치인지 번호로 반환합니다. INDEX와 짝꿍이면 VLOOKUP의 정통 대체.

MATCH 수식 구조

=MATCH(찾을값, 범위, 일치유형)

찾을값 (lookup_value)

검색할 값. 텍스트·숫자·셀 참조 모두 가능.

범위 (lookup_array)

한 행 또는 한 열의 1차원 범위. VLOOKUP과 달리 어느 위치의 열이든 가능.

일치유형 (match_type) — 선택

0 = 정확 일치 (기본 권장), 1 = ≤ (범위 오름차순), -1 = ≥ (범위 내림차순).

반환값은 위치 번호이지 값이 아닙니다. 값을 꺼내려면 INDEX와 조합하세요.

직접 체험해보세요

찾을 값을 고르고 “실행”을 누르면 위에서 아래로 스캔하다가 일치하는 셀의 위치 번호를 반환합니다.

C2=MATCH("대구", A1:A5, 0)
AC
1서울
2부산
3대구
4인천
5광주
▲ "실행" 버튼을 눌러 MATCH 동작을 확인하세요

일치유형 (match_type) 비교

슬라이더로 찾을 값을 바꾸면 0·1·-1 세 모드의 결과가 어떻게 달라지는지 확인할 수 있습니다.

범위: [60, 70, 80, 90, 100] (오름차순)

85
=MATCH(85, A1:A5, 0)

0 = 정확 일치 — 같은 값만 찾음#N/A

=MATCH(85, A1:A5, 1)

1 = ≤ 일치 — 검색값 이하 중 가장 큰 값 (범위 오름차순)3

=MATCH(85, A1:A5, -1)

-1 = ≥ 일치 — 검색값 이상 중 가장 작은 값 (범위 내림차순 필요) — 현재 범위는 오름차순이라 실제로는 #N/A 또는 오작동

실전 활용 예제

=INDEX(B2:B6, MATCH("이영희", A2:A6, 0))

INDEX + MATCH 조합. MATCH가 이영희의 행 번호를 찾고, INDEX가 그 위치의 B열 값을 가져옵니다. VLOOKUP의 표준 대체.

예시: 이영희의 부서 조회개발
=MATCH(MAX(B2:B10), B2:B10, 0)

범위에서 최댓값의 위치를 반환합니다. MAX·MIN과 조합하면 1등의 행번호를 즉시 알 수 있습니다.

예시: 매출 최고 행 위치순위 1의 행 번호
=IFERROR(MATCH(A1, B:B, 0), "없음")

찾지 못하면 #N/A를 반환하는데, IFERROR로 감싸 사용자 친화적인 메시지로 바꿀 수 있습니다.

예시: 없는 값을 검색했을 때"없음"
=MATCH(75, {60;70;80;90;100}, 1)

match_type 1은 검색값 이하 중 가장 큰 값의 위치. 등급표·세율 구간 등 구간 매칭에 사용. 범위는 오름차순이어야 함.

예시: 75에 해당하는 구간2 (70의 위치)
목차
  1. 1.엑셀 MATCH 함수란?
  2. 2.match_type 3가지 + 오류
  3. 3.INDEX/MATCH = VLOOKUP 대체 표준
  4. 4.MATCH vs VLOOKUP/XMATCH/XLOOKUP
  5. 5.실전 사용 시나리오 8가지
  6. 6.자주 발생하는 함정 6가지
  7. 7.자주 묻는 질문

엑셀 MATCH 함수란?

엑셀 MATCH 함수는 범위에서 값의 위치 번호(1부터)를 반환하는 검색·참조 함수입니다. 값 자체가 아닌 위치만 반환하므로 단독보다는 INDEX와 콤보로 가장 자주 쓰여요 — VLOOKUP의 한계(첫 열만 검색)를 넘는 표준 패턴.

구문은 =MATCH(찾을값, 범위, [match_type]) 3 인수. match_type은 0(정확), 1(작거나 같음, 기본), -1(크거나 같음) 중 선택 — 생략 시 1이라 정렬 안 되어 있으면 잘못된 결과. 항상 0 명시 권장.

match_type 3가지 + 오류

match_type동작정렬 필요사용
0정확 일치 (없으면 #N/A)불필요추천 — 일반적
1 (기본)작거나 같은 값 중 최대오름차순 필수등급·구간
-1크거나 같은 값 중 최소내림차순 필수역순 구간

항상 0 명시 권장.

동작 예시

범위 A1:A5 = [사과, 배, 포도, 딸기, 망고]

 

=MATCH("포도", A1:A5, 0) → 3 (세 번째)

=MATCH("키위", A1:A5, 0) → #N/A(값 없음)

=MATCH("*고", A1:A5, 0) → 5 (와일드카드, 망고)

 

범위 B1:B5 = [60, 70, 80, 90, 100] (오름차순)

=MATCH(85, B1:B5, 1) → 3 (85 이하 최대 = 80, 위치 3)

=MATCH(85, B1:B5, 0) → #N/A (정확 85 없음)

처리하는 오류 3가지

오류 코드풀이발생 원인
#N/A값 없음 (Not Available)정확 일치(0)인데 못 찾음 / 정렬 안 됨
#VALUE!값 유형 오류match_type이 유효하지 않은 값
#REF!참조 오류 (Reference)잘못된 범위 참조

INDEX/MATCH = VLOOKUP 대체 표준

VLOOKUP (제약):

=VLOOKUP("애플", A:C, 3, FALSE)

→ A열 검색, C열 반환 (검색 열이 항상 첫 열)

INDEX/MATCH (유연):

=INDEX(C:C, MATCH("애플", B:B, 0))

→ B에서 위치 찾고, C의 그 위치 반환

→ 어느 열에서든 검색·반환 가능

MATCH가 위치만 반환, INDEX가 그 위치 값 추출 = 분업 구조.

MATCH vs VLOOKUP/XMATCH/XLOOKUP

함수반환검색 방향권장 시점
MATCH위치 번호만양방향 (1차원)INDEX와 조합
VLOOKUP세로 (첫 열만)단순 룩업
XMATCH (2021+)위치 번호 (확장)양방향 + 역방향MATCH 모던 대체
XLOOKUP (2021+)값 (양방향)양방향INDEX/MATCH 대체

Excel 365·2021+이면 XLOOKUP/XMATCH 권장, 구버전은 INDEX/MATCH.

실전 사용 시나리오 8가지

  • 단순 위치 찾기 =MATCH("애플", A1:A100, 0)
  • INDEX/MATCH 콤보 =INDEX(C:C, MATCH(A1, B:B, 0))
  • 양방향 조회 (2차원) =INDEX(B2:D10, MATCH(찾을행, A2:A10, 0), MATCH(찾을열, B1:D1, 0))
  • 정렬된 등급표 (match_type 1) =INDEX(등급, MATCH(점수, 점수범위, 1))
  • 와일드카드 검색 =MATCH("애플*", A1:A100, 0)
  • 존재 여부 검사 =ISNUMBER(MATCH(A1, B:B, 0))
  • 마지막 값 위치 =MATCH(2, 1/(A:A<>"")) (배열 수식)
  • VLOOKUP 동적 컬럼 =VLOOKUP(A1, 표, MATCH(찾을컬럼, 헤더, 0), FALSE)

자주 발생하는 함정 6가지

  • match_type 생략 시 1 (근사값) — 오름차순 정렬 안 되어 있으면 잘못된 위치. 항상 0 명시 권장
  • #N/A — 못 찾음 — 정확 일치(0)인데 값 없음 / 공백 차이. IFNA로 처리: =IFNA(MATCH(...), 0)
  • 와일드카드는 match_type=0에서만 *, ?는 정확 일치 모드만. 1, -1에서는 리터럴
  • 텍스트 vs 숫자 자료형 불일치 — 텍스트 "123"과 숫자 123은 다른 값. VALUE 또는 TEXT로 통일
  • lookup_array는 1차원 — A1:C10 같은 2차원은 안 됨. 행 또는 열 단일 차원
  • 첫 매칭만 반환 — 중복 값 있으면 가장 위/왼쪽 매칭. N번째는 SMALL+IF 배열 수식

자주 묻는 질문

Q. MATCH 함수 사용법은?

=MATCH(찾을값, 범위, [match_type]) 형식. 범위에서 값의 위치 번호 반환 (1부터). 예: =MATCH("애플", A1:A10, 0) → A열에서 "애플"의 위치. match_type 0 명시 권장.

Q. INDEX/MATCH가 VLOOKUP보다 좋은 이유는?

유연성 압승. VLOOKUP은 첫 열에서만 검색·오른쪽 열만 반환. INDEX/MATCH는 어느 열에서든 검색·왼쪽 열 반환·양방향 가능. =INDEX(C:C, MATCH(A1, B:B, 0))이 표준.

Q. match_type 0, 1, -1 차이는?

0 = 정확 일치 (정렬 불필요, 가장 안전), 1 = 작거나 같음 (오름차순 정렬 필수, 등급표), -1 = 크거나 같음 (내림차순). 일반은 0.

Q. #N/A 오류는?

정확 일치(0)인데 값 못 찾음. 또는 텍스트 공백·자료형 불일치. IFNA로 처리: =IFNA(MATCH(...), 0). 데이터 정리 (TRIM, VALUE)도 함께.

Q. 와일드카드는?

match_type=0에서만 작동. =MATCH("애플*", A1:A100, 0) → "애플"로 시작하는 첫 항목. ?(한 글자), *(여러 글자) 지원.

Q. 값이 있는지만 확인하려면?

=ISNUMBER(MATCH(A1, B:B, 0)). MATCH가 위치(숫자) 반환 시 TRUE, #N/A면 FALSE. ISERROR보다 정확.

Q. XMATCH는 뭔가요?

MATCH의 모던 확장 (Excel 2021+). 역방향 검색(search_mode=-1), 와일드카드 모드 명시 등 추가 기능. 단순 검색은 MATCH로 충분.

Q. 구글 스프레드시트에서도 동일하게 작동하나요?

네. MATCH는 표준 검색·참조 함수로 Google Sheets, LibreOffice Calc, Apple Numbers, 한컴 한셀, WPS에서 동일하게 작동합니다. XMATCH는 환경에 따라 미지원.

본 페이지는 Microsoft Support 공식 MATCH·INDEX·XMATCH 문서를 기준으로 작성되었습니다. 정확한 동작은 Excel 버전·환경에 따라 달라질 수 있으니 중요한 작업 전에는 실제 환경에서 확인하세요.