본문 바로가기
업무놀이터/업무관련 프로그램

[Excel] 엑셀 고수들의 필수 함수! INDEX + MATCH 완전 정복!

by cathand1010 2025. 5. 22.
반응형

엑셀함수 INDEX, MATCH
엑셀함수 INDEX, MATCH

 

 

엑셀 고수들의 필수 함수! INDEX + MATCH 완전 정복!

엑셀에서 정말 자주 쓰이지만 처음엔 살~짝 어렵게 느껴지는 함수 두 가지를 소개할게요.
바로 INDEX 함수MATCH 함수예요!

이 두 함수는 따로 써도 유용하지만 조합해서 쓰면 거의 모든 데이터 찾기 문제를 해결할 수 있을 정도로 막강한 능력을 보여줘요.

 

내가 원하는 위치의 값을 딱! INDEX 함수 완전 정복

 

엑셀로 데이터를 다루다 보면 "이 테이블의 어느 위치에 있는 값을 정확하게 가져오고 싶다"는 상황이 정말 자주 생기죠?
그럴 때 꼭 필요한 친구가 바로 INDEX 함수예요.

 

INDEX 함수란?

INDEX는 지정한 행과 열 위치에 있는 값을 반환해주는 함수예요.
쉽게 말해 "이 표에서 3행 2열에 있는 값을 가져다 줘!"라고 말하는 거랑 같아요.
엑셀의 눈으로 좌표를 찍는 함수라고 생각하면 이해가 쏙쏙 될 거예요!

 

기본 문법

=INDEX(범위, 행번호, [열번호])

각 인수 설명

  • 범위
    값을 가져올 데이터의 전체 범위를 지정해요.
    (예 : A1:C10, B2:D8 등)
  • 행번호
    몇 번째 행의 값을 가져올지 숫자로 지정해요.
    예를 들어 3이라면 지정한 범위의 세 번째 행을 의미해요.
  • 열번호 (선택)
    2차원 범위인 경우 몇 번째 의 값을 가져올지도 지정해줘야 해요.
    (열이 하나뿐이면 생략 가능해요!)

예시 1 : 2차원 범위에서 값 가져오기

=INDEX(A1:C5, 2, 3)

이건 A1부터 C5까지의 표에서, 2번째 행, 3번째 열의 값을 가져오는 거예요.
즉, B2 셀의 오른쪽 옆에 있는 값을 반환하는 거죠.

 

예시 2 : 1차원 범위에서 값 가져오기

=INDEX(A1:A10, 4)

이건 A1부터 A10까지 중에서 4번째 행의 값을 가져오는 거예요.
열번호는 생략해도 돼요. 왜냐면 열이 하나뿐이라 자동으로 인식하거든요!

 

INDEX 함수, 이런 점이 좋아요!

  • 행/열 위치만 알면 값을 정확하게 뽑아올 수 있어요.
  • 다른 함수(MATCH, ROW, COLUMN 등)와 결합하면 자동화에 탁월해요.
  • VLOOKUP보다 훨씬 유연해요.
    (예 : 왼쪽 값을 기준으로 오른쪽 값을 가져오는 것도 가능!)

실무 활용 팁

다른 함수와 함께 쓰기

=INDEX(A1:C10, MATCH("홍길동", A1:A10, 0), 3)

A열에서 "홍길동"이 있는 행을 MATCH 함수로 찾고,
그 행의 C열 값을 INDEX 함수로 가져오는 조합이에요.
정말 실무에서 많이 쓰는 방식입니다!

 

행 전체, 열 전체 가져오기

=INDEX(A1:C10, 2, 0)

열번호에 0을 넣으면 2행 전체를 배열로 반환해줘요.
(단, 이건 배열 수식으로 사용하거나 특정 함수 안에서 활용해야 유효해요!)

 

INDEX는 어떤 상황에서 쓸 수 있을까요?

  • 복잡한 테이블에서 행/열 번호로 값을 정밀하게 찾고 싶을 때
  • MATCH, ROW, COLUMN 등과 함께 써서 조건에 맞는 위치를 자동으로 계산할 때
  • VLOOKUP의 한계를 뛰어넘고 싶을 때!

요약

항목 설명
함수 이름 INDEX
기능 지정된 위치의 값을 반환
문법 =INDEX(범위, 행번호, [열번호])
장점 유연하고 정확한 위치 검색 가능, 다른 함수와 잘 어울림
주의점 행/열 번호는 범위 내 기준으로 계산해야 해요

 

 

내가 찾는 값이 어디 있지? MATCH 함수 완전 정복!

 

엑셀을 하다 보면 이런 고민 자주 하게 되잖아요.

 

“이 값이 이 표에서 몇 번째에 있는지 알고 싶다!”
“특정 값이 몇 행에 있는지를 자동으로 찾고 싶다!”

 

이럴 때 정확하게 위치(index 번호)를 찾아주는 똑똑한 함수가 바로 MATCH 함수예요.

 

MATCH 함수란?

MATCH는 영어 뜻 그대로 “일치하다”는 의미예요.
엑셀에서 MATCH 함수는 어떤 값이 범위에서 몇 번째 위치에 있는지를 숫자로 반환해줘요.
하지만 주의할 점! MATCH는 그 위치만 알려주고 실제 값은 반환하지 않아요.
값을 가져오고 싶다면 INDEX 함수랑 짝꿍처럼 함께 써야 해요.

 

기본 문법

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

인수 설명

  • 찾을값
    내가 찾고자 하는 값이에요.
    예 : "사과", 100, 셀 참조(B1) 등 가능해요.
  • 범위
    값을 찾을 셀 범위예요.
    세로든 가로든 상관없고, 단일 행이나 단일 열이어야 해요!
    (예 : A1:A10 또는 B2:H2처럼 한 줄 또는 한 칸 넓이여야 해요)
  • [일치유형] (선택)
    이 인수가 정말 중요해요!
    어떤 방식으로 값을 찾을지 결정해요:값 의미 조건
    0 정확히 일치 보통 가장 많이 씀!
    1 작거나 같은 값 중 최대값 범위가 오름차순 정렬되어 있어야 해요
    -1 크거나 같은 값 중 최소값 범위가 내림차순 정렬되어 있어야 해요

예시 1: 정확히 일치하는 값의 위치 찾기

=MATCH("사과", A1:A10, 0)

A1부터 A10 중에서 "사과"가 몇 번째 위치에 있는지 알려줘요.
예를 들어 A3 셀에 "사과"가 있다면 결과는 3이에요!

 

예시 2 : 숫자 값 찾기

=MATCH(80, B1:B5, 0)

B열에서 숫자 80이 몇 번째에 있는지 찾는 거예요.
만약 B2가 80이면 결과는 2!

 

예시 3 : 셀 참조로 찾기

=MATCH(D1, A1:A10, 0)

D1에 입력된 값을 A1~A10 범위에서 찾아 위치를 반환해요.
데이터가 바뀌어도 자동으로 위치를 계산해주니까 정말 유용하죠!

 

MATCH + INDEX: 실무 최강 조합!

 

MATCH는 단독으로도 유용하지만 INDEX 함수와 함께 쓰면 무적이에요!
위치만 알려주는 MATCH와 위치로 값을 찾아주는 INDEX의 완벽한 콤비죠.

 

예시

=INDEX(B1:B10, MATCH("사과", A1:A10, 0))

A열에서 "사과"를 찾아 그 위치(행 번호)를 알아내고
B열에서 같은 행의 값을 INDEX로 찾아오는 거예요!
VLOOKUP보다 더 유연하고 강력하답니다.

 

주의할 점

  • MATCH는 정확한 위치만 반환해요. 값을 원하면 INDEX와 함께 사용하세요.
  • [일치유형]을 0으로 지정하지 않으면 정렬이 안 된 상태에서 엉뚱한 결과가 나올 수 있어요.
  • MATCH는 오직 한 줄(행) 또는 한 칼럼(열) 범위에서만 동작해요. 2차원 범위는 안 돼요!

 

정리해볼까요?

 

항목 설명
함수 이름 MATCH
기능 특정 값이 범위에서 몇 번째에 있는지 위치 반환
문법 =MATCH(찾을값, 범위, [일치유형])
반환값 숫자 (index 위치)
주 사용처 INDEX, VLOOKUP 대체, 동적 검색

 

 

INDEX + MATCH 조합 사용법 완전 정복!

 

왜 굳이 VLOOKUP 대신 INDEX + MATCH를 쓸까?

VLOOKUP도 특정 값을 기준으로 다른 값을 찾을 수 있지만
기준 열이 항상 왼쪽, 범위 구조가 고정, 열 번호를 직접 입력해야 함 같은 단점이 있어요.
그에 비해 INDEX + MATCH는

  • 기준 열이 오른쪽이든 왼쪽이든 상관없고
  • 범위가 바뀌어도 유연하게 대응 가능하며
  • 정확히 일치하는 값만 찾는 데도 더 안정적이에요!

INDEX + MATCH 조합 기본 구조

=INDEX(값을가져올범위, MATCH(찾을값, 기준범위, 0))
  • MATCH(찾을값, 기준범위, 0)
    → 기준범위에서 찾을값이 몇 번째에 있는지 위치(숫자)를 반환해줘요.
  • 그 위치 값을 INDEX(…)의 두 번째 인수로 넣어서
    → 값을가져올범위 중 그 위치의 값을 꺼내오는 거죠!

예제 데이터

A열 (상품명) B열 (가격)
사과 1000
바나나 1500
포도 2000

 

예시 공식

=INDEX(B1:B3, MATCH("사과", A1:A3, 0))

풀이

  1. MATCH("사과", A1:A3, 0) →
    A1:A3 범위에서 "사과"는 1번째에 있어요 → 결과: 1
  2. INDEX(B1:B3, 1) →
    B1:B3 범위의 1번째 값은 1000 → 결과: 1000

최종적으로 "사과"의 가격인 1000을 정확히 가져오게 돼요!

 

VLOOKUP과의 차이점

 

항목 VLOOKUP INDEX + MATCH
기준 열 위치 반드시 왼쪽 왼쪽/오른쪽 모두 가능
열 번호 숫자로 지정 (고정됨) 위치를 MATCH로 계산 (유동적)
속도 느림 (대규모 데이터에서) 상대적으로 빠름
유연성 낮음 높음
  • 예를 들어 오른쪽에서 왼쪽으로 값을 찾아야 하는 경우, VLOOKUP은 사용할 수 없지만 INDEX + MATCH는 가능해요!

실무형 예시: 동적 검색

예 : 상품명을 드롭다운으로 선택하면 자동으로 가격이 표시되는 구조 만들기

  • A1:A100 → 상품명 리스트
  • B1:B100 → 상품 가격
  • D1 → 사용자가 상품명을 선택한 셀
=INDEX(B1:B100, MATCH(D1, A1:A100, 0))

사용자가 D1에서 선택한 상품명에 따라 자동으로 해당 가격이 표시돼요.
이렇게 하면 함수 수정 없이도 동적으로 결과를 보여줄 수 있어요!

 

MATCH를 열 번호로도 응용해보자!

예를 들어 가로 방향 데이터에서 특정 항목이 몇 번째 열에 있는지 찾을 수도 있어요.

=INDEX(A2:D2, MATCH("포도", A1:D1, 0))

A1:D1에서 "포도"가 몇 번째 열인지 찾고
A2:D2에서 그 위치의 값을 반환하는 방식이에요!

 

실무 팁 요약

  • INDEX + MATCH는 가장 신뢰할 수 있는 검색 방식이에요.
  • 범위가 바뀌어도 공식이 깨지지 않아서 템플릿에 활용하기 좋아요.
  • MATCH를 응용하면 열 위치 자동화도 가능해서 유지보수가 쉬워요.

이제 INDEX + MATCH 조합까지 마스터하셨다면
엑셀 검색 함수의 진짜 고수라고 해도 과언이 아니에요!

 

왜 INDEX + MATCH가 좋을까요?

 

기능 VLOOKUP INDEX + MATCH
왼쪽 열 검색 ❌ 안됨 ✅ 가능
열 삽입에 영향 ✅ 영향 받음 ✅ 영향 거의 없음
가로/세로 모두 사용 ❌ 세로만 ✅ 모두 가능
속도 느릴 수 있음 상대적으로 빠름

즉, VLOOKUP보다 훨씬 유연하게 데이터 검색이 가능하다는 것!
엑셀 고수들은 대부분 INDEX + MATCH를 씁니다.

 

실무 팁 모음

  • MATCH 함수의 결과값을 행번호나 열번호로 넣으면 자동화에 딱!
  • MATCH(1, 조건1*(조건2), 0) 같은 형태로 조건이 여러 개일 때도 활용 가능해요!
  • INDEX(범위, MATCH(...)) 조합은 필터처럼 원하는 값을 쏙 뽑아올 때 아주 유용해요.

 

처음에는 살짝 복잡해 보이지만 한 번 익숙해지면 INDEX + MATCH는
어떤 검색도 자유자재로 할 수 있는 엑셀 데이터 분석의 핵심 무기예요!

오늘 배운 내용 잘 복습해보시고
VLOOKUP 말고도 INDEX와 MATCH로 더 유연하게 데이터를 다뤄보세요.

 

 

 

 

 

2025.05.09 - [업무놀이터/업무관련 프로그램] - [Excel] 찾기/참조 함수 완전 정복! VLOOKUP & HLOOKUP 쉽게 이해해요

 

[Excel] 찾기/참조 함수 완전 정복! VLOOKUP & HLOOKUP 쉽게 이해해요

찾기/참조 함수 완전 정복! VLOOKUP & HLOOKUP 쉽게 이해해요엑셀을 사용하다 보면 여러 데이터 중에서 특정 값을 찾아야 할 때가 정말 많잖아요? 예를 들어 "사과의 가격이 얼마지?" 같은 질문이 생기

cathand1010.com

 

 

 

 

#엑셀 #엑셀함수 #INDEX #MATCH #엑셀기초 #엑셀공부 #엑셀데이터분석 #엑셀자동화 #VLOOKUP대체 #엑셀활용팁

#INDEX함수 #엑셀기초 #엑셀활용팁 #엑셀데이터분석 #엑셀자동화 #VLOOKUP대체 #MATCH함수와궁합 #엑셀표활용

#INDEXMATCH #VLOOKUP대체 #엑셀실무 #엑셀팁 #엑셀공식 #데이터분석

 

반응형