엑셀 XLOOKUP vs VLOOKUP 함수 비교, 차이
XLOOKUP과 VLOOKUP은 이름만 비슷하지, 실제 성능과 구조는 완전히 다른 수준이다.
엑셀을 오래 사용한 사람조차도 두 함수의 차이를 정확히 이해하지 못해 오류를 반복하는 경우가 많다. 특히 데이터가 조금만 변형돼도 오류가 나는 VLOOKUP 특성과 달리, XLOOKUP은 구조 자체가 현대적인 형태로 바뀌어 안정성과 확장성이 높다. 그래서 오늘은 두 함수의 전반적인 구조, 실무에서 발생하는 문제, 각 함수가 어떤 상황에서 유리한지까지 전체적으로 비교해본다.
XLOOKUP과 VLOOKUP의 차이를 알면, 반복 작업에서 발생하는 오류를 줄일 수 있고, 향후 템플릿을 만들 때도 “왜 최신 함수 기반으로 바꿔야 하는지” 명확하게 이해할 수 있다.
1. 기본 개념의 차이
VLOOKUP은 세로 방향 수직 검색 함수다.
XLOOKUP은 범용 검색 함수다.
VLOOKUP은 특정 값을 기준으로 표의 첫 번째 열에서 검색해 오른쪽에 있는 값을 가져온다. 검색은 항상 왼쪽에서 오른쪽으로만 가능하다. 왼쪽에 있는 값이 필요하면 아예 표를 재정렬하거나, INDEX-MATCH 같은 조합함수를 사용해야 한다.
반면 XLOOKUP은 검색범위와 반환범위를 따로 지정한다. 검색 방향이 고정되지 않으므로 왼쪽·오른쪽 양방향 검색이 가능하고, 표 구조가 여러 번 바뀌더라도 검색 로직은 흔들리지 않는다.
이 개념 차이가 실무에서 매우 크다. 하나의 열이 추가되거나 위치가 바뀌면 VLOOKUP은 순식간에 모든 수식이 틀어지지만 XLOOKUP은 영향을 받지 않는다.
2. 함수 구조 비교
VLOOKUP
VLOOKUP(검색값, 테이블범위, 열번호, 정확도옵션)
XLOOKUP
XLOOKUP(검색값, 검색범위, 결과범위, 찾을수없을때, 일치옵션, 검색방향)
VLOOKUP은 테이블범위에서 몇 번째 열을 가져올지 직접 숫자를 입력해야 한다. 예를 들어
VLOOKUP(A2, B2:E100, 4, 0)
이 식은 B열부터 E열까지 네 번째 열값을 가져오라는 의미인데, 범위가 조금만 바뀌어도 열번호가 달라져서 전체 수식이 오류난다. 이 구조는 유지보수성이 낮다.
반면 XLOOKUP은 검색범위와 결과범위를 각각 지정한다.
XLOOKUP(A2, B2:B100, E2:E100)
이렇게 작성하면 B열에서 기준을 찾고 E열 값을 가져온다는 의미가 명확하다. 열이 추가되거나 순서가 바뀌어도 수식은 변하지 않는다.
3. 검색 방향의 한계
VLOOKUP은 오른쪽 검색만 된다.
즉, 기준열이 왼쪽에 있어야 한다.
예를 들어
상품명에서 상품코드를 찾는 경우는 가능하지만
상품코드에서 상품명을 찾는 경우, 표 구조가 기존과 반대라면 바로 오류가 발생한다. 기준열이 오른쪽에 있으면 VLOOKUP 자체로는 검색이 불가능하다.
XLOOKUP은 검색 범위를 따로 지정하므로
왼쪽 검색
오른쪽 검색
심지어 역순 검색까지 자유롭다.
표 구조가 자주 바뀌는 업무라면 XLOOKUP이 사실상 필수다.
4. 정확도 옵션 차이
VLOOKUP은 정확도 옵션을 0 또는 FALSE로 설정해야 한다.
기본값이 근사값 검색이라 같은 테이블에서도 이상한 값이 반환되는 일이 실제로 많다. 근사값 옵션을 의도적으로 쓰는 경우는 거의 없는데 기본값이 근사값이라 실수가 잦다.
XLOOKUP은 기본값이 정확히 일치다.
정확도 옵션이 기본이기 때문에 잘못된 값을 가져올 위험이 매우 낮다.
5. 오류 처리 기능
VLOOKUP은 오류 처리 기능이 없다.
찾지 못하면 바로 #N/A 오류가 뜬다.
오류를 감싸려면 IFERROR를 또 써야 해서 수식 길이가 늘어난다.
XLOOKUP은 오류 처리 인수가 기본으로 있다.
XLOOKUP(A2, B:B, C:C, "")
이렇게 네 번째 인수에 빈값을 넣으면 못 찾았을 때 깔끔하게 공란으로 처리된다.
따로 IFERROR를 덧붙일 필요가 없다.
6. 유지보수성 차이
정리하면 다음과 같다.
VLOOKUP
열 추가되면 망가짐
기준열이 왼쪽에 있어야 함
열번호를 직접 찾아 입력해야 함
표 구조 조금만 바뀌어도 전체 수식 점검 필요
XLOOKUP
검색범위 따로 설정
반환범위 따로 설정
표 구조 변화에 영향 거의 없음
오른쪽·왼쪽 모두 검색 가능
엑셀 템플릿을 제작하거나 유지보수해야 하는 사람 입장에서 XLOOKUP은 구조적으로 안정적이다.
특히 여러 부서가 같이 쓰는 파일, 범위가 자주 바뀌는 보고서, 출력 구조가 매번 달라지는 정산 시트 등에서는 XLOOKUP이 사실상 필수다.
7. 실무 케이스 비교
다음과 같은 상황을 가정해보자.
상품코드 상품명 카테고리 가격
이런 표가 있고
상품명을 기준으로 상품코드와 가격을 가져와야 한다고 할 때,
중간에 카테고리 열이 하나 더 들어가거나 삭제되면 VLOOKUP의 열번호는 즉시 달라진다.
VLOOKUP(A2, B2:E100, 4, 0)
이 식은 카테고리 열이 삽입되면 바로 오류값을 내거나 엉뚱한 값을 불러온다.
반면 XLOOKUP은
XLOOKUP(A2, B2:B100, E2:E100)
이렇게 범위만 고정돼 있으면 표가 조금 바뀌어도 영향이 없다.
또 하나 대표적인 사례는 고객 데이터를 정렬하거나 연도별로 나눌 때다.
VLOOKUP은 정렬 또는 열 재배치가 일어나면 즉시 깨지지만
XLOOKUP은 검색 범위만 정상적이면 결과는 항상 동일하다.
8. 정리
VLOOKUP은 오래된 방식이라 기본 구조 자체가 불안정하다.
열번호 기반이라는 점과 오른쪽 검색만 된다는 점 때문에 유지보수가 어렵다.
데이터가 자주 바뀌는 실무에서는 오류가 반복되기 쉽다.
XLOOKUP은 검색범위·반환범위를 자유롭게 설정하는 현대적 구조다.
왼쪽·오른쪽 방향 제한이 없고
오류 처리 기능이 기본 탑재돼 있으며
표 구조가 바뀌어도 안정적으로 동작한다.
대부분의 프로젝트에서 템플릿을 새로 제작하거나 기존 파일을 업그레이드하는 경우라면
VLOOKUP 대신 XLOOKUP을 쓰는 것이 맞다.
