공부 합시다!/일 잘하는 비결, 엑셀로 능률 높이기

엑셀_심화 함수 배우기 – INDEX + MATCH 조합 완전정복

라리홈 2025. 5. 6. 13:17
728x90
반응형

엑셀_심화 함수 배우기 – INDEX + MATCH 조합 완전정복

INDEX 함수는 지정한 범위에서 특정 행과 열에 위치한 값을 반환하고,
MATCH 함수는 특정 값이 해당 범위 내 몇 번째에 위치해 있는지를 반환합니다.

이 두 함수를 조합하면,
기준 열이 왼쪽에 있어야 한다는 제한이 있는 VLOOKUP보다
훨씬 유연하고 강력하게 데이터 조회가 가능합니다.

VLOOKUP도 맣이 사용되지만,
INDEX + MATCH 조합을 익히고 나면 훨씬 더 많이 활용하게 될 것입니다.


| INDEX + MATCH 기본 구조

=INDEX(데이터범위, MATCH(기준값, 기준범위, 0))
  • MATCH(기준값, 기준범위, 0) → 기준값이 기준범위에서 몇 번째인지 반환
  • INDEX → 그 위치에 있는 값을 가져옴

예를 들어:

  A B C
1 사번 이름 부서
2 1001 김철수 인사팀
3 1002 이지은 마케팅팀
4 1003 박지민 총무팀
=INDEX(C2:C5, MATCH("이지은", B2:B5, 0))

→ A열에서 "이지은"이 몇 번째인지 찾고,
→ 그 위치의 C열 값인 부서 정보를 가져옴 : "마케팅팀"


| 예제 1: VLOOKUP과 동일한 기본 조회

A열 (사번) B열 (이름)
1001 김철수
1002 이지은
1003 박지민
 

사번이 1002일 때 이름을 찾고 싶다면:

=INDEX(B2:B4, MATCH(1002, A2:A4, 0))

→ 결과: 이지은

VLOOKUP(1002, A2:B4, 2, FALSE)와 동일한 기능이지만,
A열이 아니더라도 기준 열이 오른쪽에 있어도 적용 가능합니다.


| 예제 2: 왼쪽 열에 있는 값을 조회 (VLOOKUP은 불가)

A열 (이름) B열 (사번)
김철수 1001
이지은 1002
박지민 1003
 

사번 1002에 해당하는 이름을 찾고 싶을 때
VLOOKUP은 기준 열이 항상 왼쪽이어야 하므로 불가능하지만,

=INDEX(A2:A4, MATCH(1002, B2:B4, 0))

→ 결과: 이지은

기준 열이 오른쪽이어도 조회가 가능하다는 것이 가장 큰 장점입니다.


| 예제 3: 행 + 열 번호를 모두 MATCH로 구하는 2차원 조회

  A B C
1 국어 수학 영어
2 김철수 90 85
3 이지은 95 88
4 박지민 92 89
 

이지은의 수학 점수를 구하려면:

=INDEX(B2:C4, MATCH("이지은", A2:A4, 0), MATCH("수학", B1:C1, 0))

→ 결과: 95

  • 행 위치: A2:A4에서 "이지은"은 2번째
  • 열 위치: B1:C1에서 "수학"은 1번째
  • → INDEX(B2:C4, 2, 1)

| 예제 4: 유동적인 범위에 대응 (MATCH로 열 위치 자동 지정)

  A B C
1 사번 이름 부서
2 1001 김철수 인사팀
3 1002 이지은 마케팅팀
 

‘부서’라는 항목이 오른쪽으로 이동하더라도 자동으로 대응하려면:

=INDEX(A2:C3, MATCH(1002, A2:A3, 0), MATCH("부서", A1:C1, 0))

→ 결과: 마케팅팀

열 번호를 MATCH 함수로 자동 탐색하기 때문에
데이터 구조가 변경되어도 수식 유지가 가능합니다.


| 예제 5: INDEX + MATCH + IFERROR 조합

찾는 값이 없을 경우 오류가 발생할 수 있으므로 다음처럼 처리:

=IFERROR(INDEX(B2:B4, MATCH("홍길동", A2:A4, 0)), "찾을 수 없음")

→ 결과: 찾을 수 없음 (홍길동이 없으면 오류 방지)


| INDEX + MATCH vs VLOOKUP 차이 정리

비교 항목INDEX + MATCH VLOOKUP
방향 제한 없음 (왼쪽/오른쪽 모두 가능) 왼쪽 열 기준만 가능
속도 빠름 (특히 대용량에서 우수) 상대적으로 느림
유지보수성 높음 (열 번호를 MATCH로 동적 지정 가능) 열 번호가 고정되어 유지 어려움
오류 발생 시 대처 IFERROR 조합으로 유연하게 가능 IFERROR 조합 필요
 

| 실무 활용 예시

  • 고객명으로 연락처, 주소 등 다양한 정보 조회
  • 특정 부서명에 해당하는 부서코드 자동 불러오기
  • 매출 데이터에서 특정 월, 특정 지역의 값 추출
  • 동적 보고서 구성 시 필수 함수
  • VLOOKUP으로 해결 안 되는 ‘왼쪽 열 조회’ 해결
728x90