엑셀에서 데이터를 다루다 보면 "이 사번에 해당하는 이름이 뭐지?", "이 제품코드의 단가를 가져오고 싶은데" 같은 상황이 자주 생겨요. 이럴 때 쓰는 함수가 VLOOKUP이에요. 이 글에서는 VLOOKUP의 기본 문법, 실무 예제, 다른 시트에서 값을 가져오는 방법, 그리고 자주 발생하는 오류와 해결법까지 다뤄요.
VLOOKUP 함수 기본 문법
=VLOOKUP(찾을값, 범위, 열번호, [일치옵션])
각 인수의 의미는 다음과 같아요.
- 찾을값: 검색할 기준값. 사번, 제품코드, 이름 등.
- 범위: 데이터가 있는 전체 영역. 찾을값은 반드시 이 범위의 첫 번째 열에 있어야 해요.
- 열번호: 범위에서 가져올 값이 있는 열 순서. 범위의 첫 번째 열이 1이에요.
- 일치옵션: FALSE(또는 0)이면 정확히 일치, TRUE(또는 1)이면 유사 일치. 실무에서는 거의 FALSE를 써요.
VLOOKUP의 V는 Vertical(세로)의 약자예요. 세로로 나열된 데이터에서 값을 찾는 함수라는 뜻이에요.
예제 1 - 기본 사용법: 사번으로 이름 찾기
아래와 같은 사원 목록이 B2:D6 범위에 있다고 가정할게요.
| B | C | D | |
|---|---|---|---|
| 2 | 1001 | 김민수 | 영업팀 |
| 3 | 1002 | 이지은 | 인사팀 |
| 4 | 1003 | 박준혁 | 개발팀 |
| 5 | 1004 | 최수진 | 마케팅팀 |
| 6 | 1005 | 정하늘 | 경영지원팀 |
G2셀에 사번 1003을 입력하고, H2셀에서 해당 사원의 이름을 가져오려면:
=VLOOKUP(G2, $B$2:$D$6, 2, FALSE)
결과: 박준혁
동작 원리를 풀어보면, B2:D6 범위의 첫 번째 열(B열)에서 1003을 찾고, 그 행의 2번째 열(C열) 값인 "박준혁"을 반환해요.
범위를 $B$2:$D$6처럼 절대참조로 쓰는 이유는, 수식을 아래로 복사할 때 범위가 밀리지 않게 하기 위해서예요. F4 키를 누르면 절대참조로 전환돼요.
예제 2 - 실무 활용: 제품코드로 단가 조회
주문 내역에서 제품코드를 기준으로 단가를 자동으로 가져오는 경우예요.
단가표 (F2:H7):
| F | G | H | |
|---|---|---|---|
| 2 | P-101 | A4용지 | 4,500 |
| 3 | P-102 | 복사용지 | 3,800 |
| 4 | P-103 | 바인더 | 2,200 |
| 5 | P-104 | 스테이플러 | 8,900 |
| 6 | P-105 | 형광펜세트 | 6,500 |
| 7 | P-106 | 포스트잇 | 1,200 |
주문 내역의 B2셀에 제품코드 P-104가 있을 때, C2셀에 단가를 가져오려면:
=VLOOKUP(B2, $F$2:$H$7, 3, FALSE)
결과: 8900
여기서 열번호가 3인 이유는, 범위 F2:H7에서 단가(H열)가 세 번째 열이기 때문이에요. 주문 내역이 여러 행이라면 이 수식을 아래로 자동채우기하면 돼요.
다른 시트에서 값 가져오기
실무에서는 단가표와 주문 내역이 다른 시트에 있는 경우가 많아요. 이때는 범위 앞에 시트명을 붙이면 돼요.
=VLOOKUP(B2, '단가표'!$A$2:$C$7, 3, FALSE)
시트 이름에 공백이나 특수문자가 있으면 작은따옴표(')로 감싸야 해요. 시트 이름이 "단가표"처럼 한글만 있어도 작은따옴표를 붙여두는 게 안전해요.
범위를 직접 타이핑하지 않고, 수식 입력 중에 해당 시트 탭을 클릭한 뒤 마우스로 범위를 드래그하면 시트명이 자동으로 붙어요.
자주 하는 실수와 주의사항
#N/A 오류가 나는 경우:
찾을값이 범위의 첫 번째 열에 없으면 이 오류가 나요. 흔한 원인은 앞뒤 공백이에요. 찾을값이 "1003 "(뒤에 공백)이면 1003과 일치하지 않아요. TRIM 함수로 공백을 제거하거나, =VLOOKUP(TRIM(G2), ...) 형태로 쓸 수 있어요.
열번호 오류:
범위에 열을 추가하거나 삭제하면 열번호가 맞지 않게 돼요. 예를 들어 B열과 C열 사이에 새 열을 삽입하면, 기존 열번호 2가 엉뚱한 열을 가리키게 돼요. 이 문제를 방지하려면 MATCH 함수로 열번호를 동적으로 지정하는 방법이 있어요.
일치옵션을 생략하는 실수:
일치옵션을 생략하면 기본값이 TRUE(유사 일치)예요. 실무에서는 거의 항상 FALSE(정확히 일치)를 써야 하므로, 마지막 인수에 0 또는 FALSE를 반드시 넣어주세요.
왼쪽 방향 조회 불가:
VLOOKUP은 범위의 첫 번째 열 기준으로 오른쪽 방향만 조회할 수 있어요. 찾을값보다 왼쪽에 있는 열의 데이터를 가져오려면 INDEX/MATCH 조합이나 XLOOKUP 함수를 써야 해요.
관련 함수 안내
VLOOKUP과 비슷하지만 제한이 적은 함수로 XLOOKUP이 있어요. XLOOKUP은 왼쪽 방향 조회도 가능하고, 일치옵션 기본값이 정확히 일치라서 실수할 가능성이 줄어요. 다만 Microsoft 365와 Excel 2021 이상에서만 사용 가능해요. XLOOKUP은 다음 글에서 별도로 다룰 예정이에요.
가로로 나열된 데이터에서 값을 찾아야 한다면 HLOOKUP 함수를 쓸 수 있어요. H는 Horizontal(가로)의 약자예요.
VLOOKUP은 실무에서 데이터 조회가 필요할 때 가장 먼저 떠올리는 함수예요. 기본 문법 4가지 인수와 절대참조, 그리고 FALSE 옵션만 기억하면 대부분의 상황에서 바로 쓸 수 있어요. 다음 글에서는 조건에 따라 다른 결과를 출력하는 IF 함수를 다뤄요.
'엑셀' 카테고리의 다른 글
| 엑셀 조건부 서식 사용법 - 셀 강조부터 수식 규칙까지 (0) | 2026.02.14 |
|---|---|
| 엑셀 IF 함수 사용법, 단일 조건부터 다중 조건까지 (1) | 2026.02.12 |
| 📊 엑셀 MEDIAN 함수 완벽 마스터: 초보자도 쉽게 따라하는 중간값 계산! (0) | 2025.04.02 |
| ✨ 엑셀 고급 필터 마스터하기: 조건부 데이터 추출 완전 정복 🧙♂️ (0) | 2025.04.02 |
| 엑셀 와일드카드 완벽 가이드: 별표(*)와 물음표(?)로 데이터 마스터하기 🧙♂️ (0) | 2025.04.01 |