본문 바로가기
카테고리 없음

엑셀 VLOOKUP 함수 사용법, 예제로 5분 만에 이해하기

by 유용한디지털노트 2026. 7. 15.

예전에 회사에서 재고 목록이랑 주문 목록을 나란히 띄워 놓고, 제품 코드를 하나하나 눈으로 대조하던 시절이 있었어요. 100줄쯤 넘어가니까 눈이 빠질 것 같더군요. 그때 옆자리 선배가 지나가면서 "그거 VLOOKUP 쓰면 몇 초면 끝나"라고 했는데, 저는 이름부터 어려워 보여서 지레 겁을 먹었습니다. 그런데 막상 배워 보니 원리가 정말 단순했어요. 이 글에서는 VLOOKUP이 뭘 하는 함수인지부터, 실제로 사번으로 이름을 찾는 예제, 그리고 초보자라면 거의 다 한 번씩 만나는 #N/A 오류까지 차례대로 풀어 보겠습니다.

VLOOKUP은 결국 "표에서 짝 찾아 오기"입니다

VLOOKUP의 V는 Vertical, 그러니까 세로를 뜻합니다. 세로로 정리된 표에서 특정 값을 찾은 다음, 그 값과 같은 행에 있는 다른 정보를 끌어오는 함수예요. 말로 풀면 "이 사번을 가진 사람 이름이 뭐지?" 하고 표를 대신 뒤져 주는 겁니다. 사람이 하면 눈으로 위아래를 훑어야 하지만, VLOOKUP은 그 일을 한 번에 처리해요.

기본 구조는 이렇게 생겼습니다.

=VLOOKUP(찾을값, 범위, 열번호, 0)

인수가 네 개라 처음엔 많아 보이는데, 하나씩 뜯어 보면 하나도 안 어렵습니다.

  • 찾을값: 내가 기준으로 삼는 값입니다. 아래 예제에서는 사번이 여기에 들어갑니다.
  • 범위: 찾을값과 가져올 값이 모두 담겨 있는 표 영역입니다. 중요한 규칙이 하나 있는데, 찾을값은 반드시 이 범위의 맨 왼쪽 열에 있어야 해요.
  • 열번호: 범위의 첫 열을 1로 셌을 때, 내가 가져오고 싶은 값이 몇 번째 열에 있는지를 숫자로 적습니다.
  • 0: 마지막 인수입니다. 여기 들어가는 0(또는 FALSE)은 "정확히 일치하는 값만 찾아라"라는 뜻입니다.

마지막 인수 0을 꼭 붙이세요

초보자가 가장 많이 빠뜨리는 부분이 바로 이 마지막 0입니다. 여기에 0(FALSE) 대신 1(TRUE)을 넣거나 아예 생략해 버리면, 엑셀은 "정확히 같은 값"이 아니라 "비슷한 값"을 근사치로 찾아 옵니다. 사번이나 이름, 제품 코드처럼 딱 맞아떨어져야 하는 데이터에서는 엉뚱한 결과가 나오기 딱 좋아요. 그래서 저는 아예 조건 따지지 않고 습관적으로 마지막에 0을 붙입니다. 실무에서 마주치는 상황의 열에 아홉은 0이 정답이라고 봐도 됩니다.

왜 굳이 함수까지 써야 할까요

데이터가 스무 줄 정도면 그냥 눈으로 찾는 게 빠를 수도 있어요. 하지만 수백, 수천 줄이 되면 얘기가 달라집니다. 사람 눈으로 대조하면 시간도 오래 걸리고, 무엇보다 중간에 한두 개 틀리는 실수가 반드시 생겨요. VLOOKUP은 원본 표의 값이 바뀌면 결과도 자동으로 따라 바뀐다는 점도 큰 장점입니다. 예를 들어 인사팀에서 직원 명단을 새로 업데이트해도, 수식만 걸어 뒀다면 조회 결과가 알아서 최신 값으로 갱신돼요. 한 번 만들어 두면 계속 우려먹을 수 있다는 게 핵심입니다.

따라 하기: 사번으로 이름 찾기

실제 예제로 가 보겠습니다. 이런 표가 있다고 해 볼게요.

  • A열: 사번 (A2부터 A100까지 데이터가 들어 있음)
  • B열: 이름
  • C열: 부서

그리고 오른쪽 어딘가, 이를테면 E2 셀에 찾고 싶은 사번을 입력해 뒀다고 합시다. 이제 F2 셀에 다음 수식을 넣습니다.

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

해석하면 이렇습니다. "E2에 적힌 사번을, A2:C100 표의 맨 왼쪽 열(A열)에서 정확히 일치하는 값으로 찾아라. 찾으면 그 행의 2번째 열(B열, 이름)을 가져와라." 열번호를 3으로 바꾸면 이름 대신 부서(C열)가 나옵니다. 이 한 줄이면 사번만 바꿔 넣어도 이름이 즉시 튀어나와요.

범위는 반드시 절대참조로

위 수식에서 범위를 $A$2:$C$100처럼 달러 기호를 붙여 쓴 걸 눈여겨봐 주세요. 이걸 절대참조라고 합니다. 만약 그냥 A2:C100이라고 쓰면, 수식을 아래로 드래그해서 복사할 때 범위가 A3:C101, A4:C102처럼 한 칸씩 밀려 내려갑니다. 그러면 아래쪽 데이터를 찾을 때 표 범위를 벗어나 버려서 오류가 생겨요. 달러 기호를 붙이면 어디로 복사하든 범위가 고정됩니다. 수식을 입력할 때 범위를 드래그한 다음 키보드 F4 키를 한 번 누르면 자동으로 $가 붙으니 이 방법을 추천해요. 저도 처음엔 이걸 몰라서 복사할 때마다 값이 깨져서 한참을 헤맸습니다.

#N/A 오류가 떴다면

VLOOKUP을 쓰다 보면 결과 대신 #N/A라는 오류가 뜨는 경우가 정말 흔합니다. #N/A는 "찾는 값이 없다"는 신호예요. 원인은 대체로 아래 몇 가지 중 하나입니다.

  1. 찾을값이 범위 맨 왼쪽 열에 없음: VLOOKUP은 무조건 범위의 첫 열에서만 찾습니다. 사번이 A열이 아니라 C열에 있다면 못 찾아요.
  2. 공백이나 형식 차이: 눈으로는 똑같아 보여도 한쪽 값 뒤에 공백이 붙어 있거나, 한쪽은 숫자이고 다른 쪽은 텍스트로 저장된 숫자면 다른 값으로 봅니다. 이 경우가 은근히 많아요.
  3. 범위 지정 실수: 표가 A100까지 있는데 범위를 A50까지만 잡았다면, 51번 이후 값은 못 찾습니다.

해결은 이렇게 접근하면 됩니다. 먼저 찾을값이 범위 첫 열에 정말 있는지 확인하고, 양쪽 값의 공백을 TRIM 함수 등으로 정리해 봅니다. 숫자와 텍스트가 섞였다면 형식을 한쪽으로 통일하세요. 그래도 데이터가 없어서 뜨는 #N/A라면, 수식을 =IFERROR(VLOOKUP(E2,$A$2:$C$100,2,0),"조회 안 됨") 처럼 IFERROR로 감싸서 오류 대신 원하는 문구가 나오게 하면 표가 훨씬 깔끔해집니다.

더 편한 XLOOKUP도 있습니다

참고로 마이크로소프트 365와 엑셀 2021 이상에서는 XLOOKUP이라는 상위 함수를 쓸 수 있는데, 열번호를 셀 필요가 없고 왼쪽 값도 찾을 수 있어서 더 편합니다. 다만 구버전 엑셀에서는 지원되지 않으니, 아직은 VLOOKUP을 확실히 익혀 두는 편이 두루 쓰기 좋습니다.

핵심 요약
  • 구조: =VLOOKUP(찾을값, 범위, 열번호, 0) — 마지막 0은 정확히 일치.
  • 찾을값은 반드시 범위의 맨 왼쪽 열에 있어야 함.
  • 범위는 $A$2:$C$100 형태의 절대참조(F4)로 고정.
  • #N/A는 "값 없음" 신호 — 첫 열 확인, 공백·형식 통일, IFERROR로 마무리.