고객 DB에서 고객 ID를 기준으로 이름, 지역, 등급을 불러와야 한다.
매출 데이터에서 상품 코드로 가격을 자동 연결해야 한다.
그런데 참조 범위 조금만 바꾸면 결과가 뒤죽박죽.
엑셀에서 이런 데이터 연결 작업을 하다 보면,
가장 먼저 떠오르는 함수가 바로 'VLOOKUP'입니다.
하지만 이제, ‘XLOOKUP’ 시대가 열렸습니다.
① 고객정보 Sheet
② 주문 Sheet
목표: 주문 테이블에 고객 이름·지역·등급을 자동으로 불러오기.
=VLOOKUP([@고객 ID], 고객정보!B:E, 2, FALSE)
[@고객 ID] : 찾고자 하는 값 (예: C002)
고객정보!B:E : 참조 범위
2 : 두 번째 열(이름)을 가져옴
FALSE : 정확히 일치하는 값만 검색
결과: 주문번호 O001 → 고객 ID C002 → 이름 "김철수"
1. 왼쪽 검색 불가
- 기준 열이 오른쪽에 있으면 참조 불가. (예: 이름으로 ID를 찾는 건 불가능)
2. 열 번호 의존
- 열이 추가·삭제되면 함수가 깨집니다.
3. 성능 저하
- 데이터가 많을수록 느려집니다.
=XLOOKUP([@고객 ID], 고객정보!B:B, 고객정보!C:C, "N/A")
[@고객 ID] : 찾을 값
고객정보!B:B : 기준 범위
고객정보!C:C : 반환할 열
"N/A" : 값이 없을 때 표시
결과: 동일하게 주문번호 O001 → 이름 "김철수"
1. 왼쪽·오른쪽 모두 검색 가능
- ID → 이름, 이름 → ID 자유롭게 가능.
2. 열 번호 불필요
- 반환 열을 직접 지정 → 구조 변경에도 안전.
3. 여러 열 반환 가능
- 이름·지역·등급을 한 번에 가져올 수도 있습니다.
=XLOOKUP([@고객 ID], 고객정보!B:B, 고객정보!C:E)
4. 없는 값 처리 가능
- "N/A"와 같은 기본값을 지정해 오류 대신 메시지 표시.
VLOOKUP : 오래된 함수, 여전히 실무에서 자주 쓰이지만 구조에 약함.
XLOOKUP : 더 직관적이고, 효율적이며, 실무 친화적인 최신 함수.
추천 전략 : 신규 프로젝트 → XLOOKUP 사용, 기존 문서 유지 보수 → VLOOKUP 병행
<Tip>
엑셀 2019 이하 버전에서는 XLOOKUP이 지원되지 않습니다.
그럴 땐 INDEX + MATCH 조합으로 비슷한 기능을 구현할 수 있습니다.