본문 바로가기

엑셀

엑셀 VLOOKUP 함수 사용법 – 구문, 예시, 오류 해결까지

반응형

업무에서 두 개의 표를 연결하거나 코드로 이름·가격을 불러올 때 엑셀 VLOOKUP 함수가 자주 쓰입니다. 이 글에서는 함수의 구문과 인수 설명, 기본 예시, 다른 시트 참조 방법, 유사 일치 활용, 그리고 자주 발생하는 오류 해결 방법까지 다룹니다.


VLOOKUP 함수란

VLOOKUP은 세로 방향으로 구성된 표에서 값을 찾아 지정한 열의 데이터를 반환하는 함수입니다. Vertical Lookup의 약자이며, 가로 방향 검색이 필요하면 HLOOKUP을 사용합니다.

어떤 상황에서 쓰는가

  • 주문 목록의 제품 코드로 단가 테이블에서 가격을 불러올 때
  • 사원 번호로 이름, 부서, 직급을 조회할 때
  • 점수 구간별로 등급(A, B, C)을 자동 변환할 때

함수 구문과 4개 인수 설명

=VLOOKUP(찾을값, 참조범위, 열번호, 일치옵션)
인수 영문명 설명
찾을값 lookup_value 참조범위의 첫 번째 열에서 검색할 값. 셀 참조, 텍스트, 숫자 가능
참조범위 table_array 찾을값이 있는 첫 열부터 반환값 열을 포함하는 범위
열번호 col_index_num 참조범위 내 반환할 열의 번호 (첫 열=1, 두 번째=2, ...)
일치옵션 range_lookup 0 또는 FALSE: 정확히 일치 / 1 또는 TRUE: 유사 일치 (생략 시 기본값 TRUE)

인수 중 주의할 점은 일치옵션입니다. 생략하면 TRUE(유사 일치)가 기본값으로 적용되어 예상과 다른 값이 반환될 수 있습니다. 실무에서는 네 번째 인수에 0 또는 FALSE를 명시하는 것이 일반적입니다.


기본 사용 예시

제품 코드로 가격 조회하기 (정확히 일치)

아래와 같은 제품 단가표가 A열C열(2행6행)에 있다고 가정합니다.

A열 (제품코드) B열 (제품명) C열 (단가)
A101 복사용지 8,000
A102 볼펜 1,500
A103 스테이플러 12,000
A104 포스트잇 3,200

E2 셀에 제품코드 "A102"가 입력되어 있고, F2 셀에 단가를 불러오려면:

=VLOOKUP(E2, $A$2:$C$6, 3, 0)

결과값으로 1,500이 반환됩니다.

자동채우기 시 절대참조 적용 방법

수식을 여러 행에 복사(자동채우기)할 때 참조범위가 한 행씩 밀리면 오류가 발생합니다. 참조범위를 선택한 상태에서 F4 키를 누르면 $A$2:$C$6 형태의 절대참조로 고정됩니다.


다른 시트·다른 파일 참조

같은 파일, 다른 시트 참조

=VLOOKUP(E2, 단가표!$A$2:$C$100, 3, 0)

시트명에 한글·공백이 포함된 경우

=VLOOKUP(E2, '2024 단가표'!$A$2:$C$100, 3, 0)

유사 일치(TRUE) 활용 – 등급 변환 예시

일치옵션을 1(TRUE)로 설정하면 찾을값보다 크지 않은 값 중 가장 큰 값을 기준으로 반환합니다.

F열 (최소점수) G열 (등급)
0 F
60 D
70 C
80 B
90 A
=VLOOKUP(B2, $F$2:$G$6, 2, 1)

점수가 85점이면 "B"가 반환됩니다.

오름차순 정렬 조건과 작동 원리

유사 일치를 사용할 때 참조범위의 첫 번째 열이 오름차순으로 정렬되어 있지 않으면 잘못된 값이 반환됩니다.


자주 하는 실수와 오류 해결

#N/A 오류 – 원인별 해결

원인 해결 방법
찾을값이 참조범위 첫 열에 없음 범위 설정 확인, 찾을값 존재 여부 확인
숫자가 텍스트로 저장된 경우 VALUE() 함수로 숫자 변환
텍스트가 숫자로 저장된 경우 TEXT() 함수 활용
앞뒤 공백 또는 숨겨진 문자 포함 TRIM() 함수로 전처리
절대참조 미사용으로 범위 밀림 F4 키로 절대참조($) 적용

공백 문자 해결 예시:

=VLOOKUP(TRIM(E2), $A$2:$C$100, 3, 0)

잘못된 값이 반환되는 경우

#N/A 오류는 아니지만 기대한 값과 다른 값이 나오는 경우는 대부분 일치옵션 문제입니다. 수식에서 마지막 인수를 0으로 바꾸면 해결됩니다.


IFERROR와 결합해 오류 숨기기

=IFERROR(VLOOKUP(E2, $A$2:$C$100, 3, 0), "없음")

빈 칸 처리:

=IFERROR(VLOOKUP(E2, $A$2:$C$100, 3, 0), "")

IFERROR는 VLOOKUP 외에 다른 오류 유형(#VALUE!, #REF! 등)도 모두 처리하므로, 원인 파악이 필요한 개발·검수 단계에서는 오류를 숨기지 않고 먼저 원인을 확인하는 것이 좋습니다.


VLOOKUP 함수는 참조범위 첫 번째 열에 찾을값이 있어야 하고, 일치옵션을 명시해야 한다는 두 가지 규칙만 지키면 대부분의 조회 작업에 활용할 수 있습니다. 왼쪽 방향 검색이나 여러 조건을 동시에 적용해야 할 경우에는 INDEX+MATCH 또는 XLOOKUP 함수가 대안입니다.

반응형