엑셀에서 데이터를 찾아오는 대표적인 함수는 VLOOKUP과 INDEX+MATCH입니다.
두 함수 모두 표 형태의 데이터를 참조하여 원하는 값을 찾아주는 데 유용하지만, 기능상 차이와 활용도 면에서는 큰 차이가 있습니다. 두 함수의 특징을 비교하고, 실제 사용 예시와 주의할 점, 추천 활용 팁까지 정리해 드리겠습니다.
VLOOKUP 함수란?
VLOOKUP(Vertical Lookup)은 세로 방향으로 데이터를 검색하여 값을 반환하는 함수입니다.
함수 구조는 =VLOOKUP(찾을값, 범위, 열번호, [정확도])
예: =VLOOKUP("홍길동", A2:C100, 3, FALSE)
→ A2:C100 범위에서 첫 번째 열에서 "홍길동"을 찾고, 같은 행의 세 번째 열 값을 반환합니다.
장점: 간단하고 직관적인 구문
단점: 검색 열은 반드시 첫 번째 열에 위치해야 하며, 열 번호로 참조하기 때문에 삽입/삭제에 취약합니다.
INDEX + MATCH 함수란?
INDEX 함수는 특정 위치의 값을 반환하고, MATCH 함수는 해당 값의 위치를 반환하는 함수입니다.
두 함수를 결합하면 다양한 방향의 참조가 가능합니다.
=INDEX(반환할범위, MATCH(찾을값, 기준열, 0))
예: =INDEX(C2:C100, MATCH("홍길동", A2:A100, 0))
→ A열에서 "홍길동"의 행 번호를 찾고, C열에서 동일한 행의 값을 반환합니다.
장점: 좌우 구분 없이 양방향 참조 가능, 열 삽입/삭제에도 안전
단점: 구문이 비교적 복잡하여 초보자에게는 어려울 수 있음
주의할 점
- VLOOKUP은 왼쪽 열만 검색 가능
오른쪽 열에서 왼쪽으로 값을 참조할 수 없어 구조적인 제약이 큽니다. - INDEX+MATCH는 정확도 인수 필요 없음
MATCH 함수에서 0을 넣어야 정확히 일치하는 값을 찾습니다. - VLOOKUP은 열 번호 변경에 민감
열이 삽입되면 열번호를 수동으로 수정해야 합니다. - 배열 수식에서 INDEX+MATCH가 더 유연
다차원 배열에서 활용이 가능하고, 조건부 참조에도 유리합니다.
추천 활용 팁
- 동적 데이터 구조에는 INDEX+MATCH 추천
열 추가/삭제가 잦은 데이터 시트라면 INDEX+MATCH가 훨씬 안정적입니다. - 검색 기준 열이 중간에 있는 경우
예: C열에서 A열의 값을 찾고 싶을 때는 VLOOKUP은 불가, INDEX+MATCH만 가능 - XLOOKUP 사용 전 과도기 대안
최신 엑셀의 XLOOKUP이 없을 경우 INDEX+MATCH 조합은 매우 유사한 유연함을 제공 - 대량 데이터에서 성능 비교
INDEX+MATCH가 VLOOKUP보다 속도 면에서 유리한 경우가 많습니다 (특히 수천 개 이상일 때)
마무리: 어떤 함수가 더 나을까?
- 간단한 참조: VLOOKUP
- 정확한 제어와 안정성: INDEX+MATCH
특히 복잡한 시트 구성이나 자동화된 보고서를 다루는 경우에는 INDEX+MATCH의 활용도가 훨씬 높습니다. 둘 다 익혀두되, 상황에 맞게 선택하여 사용하는 것이 중요합니다.
VLOOKUP, INDEX+MATCH, 다중조건 INDEX+MATCH, XLOOKUP 비교
사용 예시 : 사원명부에서 사원의 이름으로 부서와 입사일을 찾는 경우
이름 | 부서 | 입사일 | 사원ID | 급여 | 직급 |
홍길동 | 인사팀 | 2020-03-01 | 1001 | 3200000 | 대리 |
김철수 | 영업팀 | 2019-08-15 | 1002 | 2800000 | 사원 |
이영희 | 개발팀 | 2021-05-10 | 1003 | 4000000 | 과장 |
VLOOKUP 예시:
=VLOOKUP("홍길동", A2:C4, 2, FALSE) → "인사팀" 반환
=VLOOKUP("홍길동", A2:C4, 3, FALSE) → "2020-03-01" 반환
INDEX+MATCH 예시:
=INDEX(B2:B4, MATCH("홍길동", A2:A4, 0)) → "인사팀"
=INDEX(C2:C4, MATCH("홍길동", A2:A4, 0)) → "2020-03-01"
다중조건 INDEX+MATCH 예시:
=INDEX(F2:F4, MATCH(1, (A2:A4="김철수")*(B2:B4="영업팀"), 0)) → "사원"
XLOOKUP 예시:
=XLOOKUP("이영희", A2:A4, B2:B4, "찾을 수 없음") → "개발팀"
'엑셀' 카테고리의 다른 글
엑셀 AVERAGEIF와 IFS 함수 – 조건부 평균 vs 다중 조건 분기 함수 (0) | 2025.05.21 |
---|---|
엑셀 SUMIF와 COUNTIF 조건부 합계와 개수 구하기 함수 비교 (0) | 2025.05.21 |
엑셀 단축키 기능 정리 (0) | 2025.05.20 |
엑셀 순환참조 제거 찾기, 오류 및 해결방법 (0) | 2025.05.20 |
엑셀 리본 메뉴, 빠른 실행 도구 모음 사용자 지정 변경 방법 (0) | 2025.05.17 |