목차▾
엑셀 XLOOKUP 함수란?
엑셀 XLOOKUP 함수는 VLOOKUP과 HLOOKUP의 한계를 모두 해결한 진화형 조회 함수 입니다. Microsoft 365와 Excel 2021부터 도입됐으며, 왼쪽 조회·if_not_found 내장·정확 일치 기본 등 VLOOKUP의 단점을 거의 모두 보완했어요. 신규 시트는 무조건 XLOOKUP, 기존 시트도 가능하면 마이그레이션이 추천될 정도로 상위 호환 함수입니다.
구문은 =XLOOKUP(찾을값, 검색범위, 반환범위, [없을때값], [매칭모드], [검색모드]) 형식으로 최대 6개 인수입니다. 처음 3개만 필수, 나머지는 선택. 가장 중요한 변화는 검색 범위와 반환 범위를 별도로 지정한다는 점 — VLOOKUP의 "열 번호" 방식을 버리고 범위 자체를 가리켜서 왼쪽 조회도 되고 열 추가/삭제에도 깨지지 않습니다.
VLOOKUP 대비 7가지 결정적 진화점
XLOOKUP이 VLOOKUP을 대체할 수 있는 7가지 핵심 차이.
| # | 항목 | VLOOKUP | XLOOKUP |
|---|---|---|---|
| 1 | 왼쪽 조회 | ✗ | ✓ |
| 2 | if_not_found 내장 | ✗ (IFERROR 필요) | ✓ |
| 3 | 정확 일치 기본값 | ✗ (TRUE 기본) | ✓ (0 기본) |
| 4 | 열 번호 → 범위 지정 | 숫자 (취약) | 범위 (안전) |
| 5 | 세로·가로 동시 | V만 (HLOOKUP 별도) | 둘 다 |
| 6 | 역방향 검색 | ✗ | ✓ search_mode -1 |
| 7 | 이진 검색 | ✗ | ✓ search_mode 2/-2 |
특히 4번 "열 번호 → 범위 지정"이 실무에서 가장 큰 가치. VLOOKUP의 "3"은 중간에 열 추가하면 깨지지만, XLOOKUP은 범위 자체를 가리키므로 안전합니다.
매칭모드·검색모드 — 4+4 옵션
5번째·6번째 인수로 동작을 세밀하게 제어할 수 있습니다.
매칭모드 (match_mode, 5번째 인수)
| 값 | 의미 | 사용 시점 |
|---|---|---|
| 0 | 정확 일치 (기본) | 실무 90% — 이 모드 |
| -1 | 정확 또는 다음 작은 값 | 구간 매칭 (점수→등급) |
| 1 | 정확 또는 다음 큰 값 | 반대 방향 구간 매칭 |
| 2 | 와일드카드 (* ? ~) | 부분 문자열 검색 |
검색모드 (search_mode, 6번째 인수)
| 값 | 의미 | 사용 시점 |
|---|---|---|
| 1 | 첫→마지막 (기본) | 일반 |
| -1 | 마지막→첫 (역방향) | 최신 거래·로그 우선 |
| 2 | 이진 검색 (오름차순) | 대용량 정렬 데이터 |
| -2 | 이진 검색 (내림차순) | 대용량 정렬 데이터 |
이진 검색(2/-2)은 데이터가 정렬되어 있어야 하지만 O(log n)으로 매우 빠릅니다. 1만 행 이상이라면 정렬 후 search_mode 2 사용을 고려하세요.
실전 사용 시나리오 10가지
XLOOKUP의 진가는 다양한 시나리오에서 발휘됩니다.
- 기본 정확 일치 —
=XLOOKUP(A1, B:B, C:C) - if_not_found 내장 —
=XLOOKUP(A1, B:B, C:C, "없음") - 왼쪽 조회 (VLOOKUP 불가) —
=XLOOKUP("사과", C:C, A:A) - 가로 조회 (HLOOKUP 대체) —
=XLOOKUP(A1, B1:Z1, B5:Z5) - 다중 열 반환 (동적 배열) —
=XLOOKUP(A1, B:B, D:F)— 한 번에 D·E·F - 구간 매칭 (등급) —
=XLOOKUP(A1, {0;60;70;80;90}, {"F";"D";"C";"B";"A"}, , -1) - 와일드카드 —
=XLOOKUP("*"&A1&"*", B:B, C:C, "없음", 2) - 마지막 항목 (역방향) —
=XLOOKUP(A1, B:B, C:C, , , -1) - 다중 키 검색 —
=XLOOKUP(A1&B1, C:C&D:D, E:E) - 양방향 조회 (중첩) —
=XLOOKUP(B1, 행헤더, XLOOKUP(A1, 열헤더, 데이터범위))
자주 발생하는 오류·함정 6가지
- #NAME? — 함수 미지원 — Excel 2019 이하에서 XLOOKUP 입력. 해결: 365/2021 업그레이드 또는 VLOOKUP+IFERROR/INDEX+MATCH
- #N/A — if_not_found 생략 — 검색값 없는데 4번째 인수 안 줌. 해결:
"없음"등 대체값 명시 - #VALUE! — 배열 크기 불일치 — lookup_array와 return_array 크기 다름. 해결: 두 범위 크기 일치
- lookup_array에 여러 열·행 — 1행 또는 1열만 가능. 해결: 단일 열/행으로
- 와일드카드 동작 안 함 — match_mode 2 지정 안 함. 해결: 5번째 인수에
2명시 - 이진 검색 잘못된 결과 — search_mode 2/-2 사용했는데 데이터 정렬 안 됨. 해결: 정렬 또는 search_mode 1
버전 호환성 — 누가 쓸 수 있나
XLOOKUP은 신규 함수라 버전 제약이 명확합니다. 회사·학교 공유 파일은 호환성을 확인하고 사용하세요.
| 플랫폼 | XLOOKUP |
|---|---|
| Microsoft 365 (Windows·Mac·Web·Mobile) | ✓ |
| Excel 2021 | ✓ |
| Excel 2019 / 2016 / 2013 / 2010 / 2007 | ✗ |
| Google Sheets (2022+) | ✓ |
| LibreOffice Calc (7.4+) | ✓ |
| Apple Numbers (12+) | ✓ |
| 한컴 한셀 | ⚠️ 최신 버전 부분 지원 |
실무 가이드: 내부 본인용은 XLOOKUP, 외부 공유·구버전 사용자 있는 경우는 VLOOKUP+IFERROR 또는 INDEX+MATCH가 안전합니다. 두 패턴 모두 익혀두면 어떤 환경에서도 대응 가능해요.
자주 묻는 질문
Q. XLOOKUP 함수 사용법은?
=XLOOKUP(찾을값, 검색범위, 반환범위, [없을때값], [매칭모드], [검색모드]) 형식입니다. A1 값을 B열에서 찾고 같은 행의 C열 값을 가져오려면 =XLOOKUP(A1, B:B, C:C, "없음")을 입력합니다. 4번째 인수에 if_not_found가 내장돼 있어 IFERROR 없이도 깔끔합니다.
Q. XLOOKUP과 VLOOKUP의 가장 큰 차이는?
① 왼쪽 조회 가능 (VLOOKUP은 오른쪽만), ② if_not_found 내장 (IFERROR 불필요), ③ 정확 일치가 기본값 (VLOOKUP은 유사 일치 기본), ④ 열 번호가 아닌 반환 범위 지정 (열 추가에 안전). 가장 결정적인 건 왼쪽 조회와 if_not_found 두 가지입니다.
Q. XLOOKUP은 모든 Excel에서 쓸 수 있나요?
아니요. Microsoft 365 또는 Excel 2021 이상에서만 지원됩니다. Excel 2019, 2016, 2013 등 구버전에서는 #NAME? 오류가 납니다. 다른 사람과 공유하는 파일이라면 VLOOKUP + IFERROR 또는 INDEX+MATCH를 사용하는 게 안전합니다.
Q. XLOOKUP으로 왼쪽 열 값을 가져오는 방법은?
VLOOKUP의 가장 큰 한계가 왼쪽 조회 불가였는데, XLOOKUP은 lookup_array와 return_array를 별도로 지정하므로 어느 방향이든 가능합니다. 예: =XLOOKUP("사과", C:C, A:A) — C열에서 "사과" 찾고 왼쪽 A열 값 반환.
Q. 못 찾았을 때 #N/A 대신 다른 값을 표시하려면?
4번째 인수 if_not_found에 원하는 값을 넣으세요: =XLOOKUP(A1, B:B, C:C, "없음"). VLOOKUP은 IFERROR로 감싸야 했지만 XLOOKUP은 내장이라 한 줄로 끝납니다.
Q. XLOOKUP의 match_mode와 search_mode는 뭔가요?
match_mode(5번째): 0=정확 일치(기본), -1=정확 또는 다음 작은 값(구간 매칭), 1=정확 또는 다음 큰 값, 2=와일드카드. search_mode(6번째): 1=첫→마지막(기본), -1=마지막→첫(역방향), 2/-2=이진 검색(정렬 데이터에서 매우 빠름). 대부분은 둘 다 기본값(0, 1)으로 충분합니다.
Q. XLOOKUP으로 가로(행) 조회도 되나요?
네. HLOOKUP 따로 필요 없습니다. lookup_array를 1행 범위(B1:Z1), return_array를 다른 1행 범위(B5:Z5)로 주면 됩니다. 같은 함수로 세로·가로 모두 처리해서 함수 외워야 할 가짓수가 줄어듭니다.
Q. 구글 스프레드시트에서도 XLOOKUP 쓸 수 있나요?
네. 2022년부터 Google Sheets에서 XLOOKUP을 정식 지원합니다. 동일한 문법으로 작동합니다. LibreOffice Calc는 7.4 이상, Apple Numbers는 Numbers 12 이상에서 지원합니다.
본 페이지는 Microsoft Support 공식 XLOOKUP 문서를 기준으로 작성되었습니다. 정확한 동작은 Excel 버전·환경에 따라 달라질 수 있으니 중요한 작업 전에는 실제 환경에서 확인하세요.