본문 바로가기
스트레스 없는 직장생활/직장인 엑셀 활용

20년 직장인이 진짜 매일 쓰는 엑셀 함수, VLOOKUP과 XLOOKUP 제대로 알아보기

by soar-good-moa100 2026. 8. 13.

회사 생활을 20년 가까이 하다 보니 이런저런 툴도 많이 써봤지만, 결국 가장 자주 손이 가는 건 엑셀이었습니다. 특히 "이 사람 부서가 어디였더라", "이 제품 단가가 얼마였지" 같은 걸 매번 눈으로 찾다가 시간을 허비했던 신입 시절이 아직도 생각나는데요. 그때 선배가 알려준 함수가 바로 VLOOKUP이었습니다. 오늘은 실무에서 정말 자주 쓰이는 VLOOKUP과, 상위 호환 격인 XLOOKUP을 예시와 함께 정리해보겠습니다.

VLOOKUP이란 무엇인가

VLOOKUP은 "Vertical Lookup"의 줄임말로, 세로로 나열된 표에서 원하는 값을 찾아오는 함수입니다. 쉽게 말해 "이 이름을 명단에서 찾아서, 그 옆에 있는 정보를 가져와줘"라고 시키는 함수라고 보시면 됩니다.

기본 문법

 
=VLOOKUP(찾을 값, 찾을 범위, 몇 번째 열, 정확히 일치 여부)
  • 찾을 값: 내가 검색하고 싶은 기준값 (예: 사번, 이름, 제품코드)
  • 찾을 범위: 값을 찾을 표 전체 범위
  • 몇 번째 열: 찾을 범위에서 몇 번째 열의 값을 가져올지
  • 정확히 일치 여부: 0 또는 FALSE(정확히 일치), 1 또는 TRUE(비슷한 값도 허용)

실무 예시: 직원 명단에서 부서 찾기

인사팀에서 흔히 쓰는 상황을 예로 들어보겠습니다. A열에 사번, B열에 이름, C열에 부서가 있는 명단이 있고, 다른 시트에서 사번만 입력하면 부서가 자동으로 뜨게 만들고 싶다고 가정해봅시다.

 
=VLOOKUP(A2, 명단!A:C, 3, 0)

이 수식은 "A2에 있는 사번을, 명단 시트의 A열부터 C열까지에서 찾아서, 그 중 3번째 열(부서)의 값을 정확히 일치하는 것만 가져와라"는 뜻입니다.

여기서 신입들이 자주 하는 실수는 정확히 일치 여부를 0으로 안 써서 엉뚱한 값이 나오는 경우입니다. 마지막 인자를 생략하거나 1로 두면, 정확히 일치하는 값이 없을 때 비슷한 값을 가져와버려서 완전히 다른 사람 정보가 뜨는 사고가 납니다. 실무에서는 웬만하면 항상 0(또는 FALSE)을 쓰는 습관을 들이시는 걸 추천합니다.

VLOOKUP의 한계

VLOOKUP은 편리하지만 몇 가지 불편한 점이 있습니다.

  1. 찾는 값이 항상 가장 왼쪽 열에 있어야 한다: 부서 정보를 기준으로 사번을 찾고 싶어도, 부서가 사번보다 오른쪽에 있으면 VLOOKUP으로는 안 됩니다.
  2. 열 번호를 세는 게 번거롭다: 표 중간에 열을 하나 추가하거나 삭제하면 숫자가 다 틀어져서 수식이 깨집니다.
  3. 왼쪽 방향 검색이 안 된다: 찾는 값보다 왼쪽 열의 데이터는 가져올 수 없습니다.

이런 불편함 때문에 최근 나온 XLOOKUP을 많이들 씁니다.

XLOOKUP, VLOOKUP의 업그레이드 버전

XLOOKUP은 최신 엑셀(마이크로소프트 365, 엑셀 2021 이상)에서 사용할 수 있는 함수로, VLOOKUP의 불편한 점들을 대부분 해결했습니다.

기본 문법

 
=XLOOKUP(찾을 값, 찾을 범위, 가져올 범위, 못 찾았을 때 표시할 값)

VLOOKUP과 다르게 열 번호를 셀 필요 없이, "이 열에서 찾아서, 저 열의 값을 가져와라"라고 범위를 직접 지정하는 방식입니다.

실무 예시: 같은 상황을 XLOOKUP으로

 
=XLOOKUP(A2, 명단!A:A, 명단!C:C, "정보없음")

"A2의 사번을 명단 시트 A열에서 찾아서, 같은 행의 C열 값을 가져와라. 못 찾으면 '정보없음'이라고 표시해라"는 뜻입니다.

VLOOKUP과 비교했을 때 가장 큰 차이는 마지막 부분입니다. VLOOKUP은 값을 못 찾으면 보기 흉한 #N/A 오류가 뜨는데, 이것 때문에 실무에서는 IFERROR 함수를 따로 씌워야 하는 경우가 많았습니다. XLOOKUP은 아예 함수 안에서 "못 찾으면 이렇게 표시해줘"를 지정할 수 있어서 수식이 훨씬 깔끔해집니다.

왼쪽 방향 검색도 문제없다

부서명으로 사번을 거꾸로 찾고 싶다면 이렇게 쓸 수 있습니다.

 
=XLOOKUP(C2, 명단!C:C, 명단!A:A)

VLOOKUP이었으면 표 구조를 바꾸거나 INDEX/MATCH 같은 다른 함수 조합을 써야 했을 상황이 XLOOKUP에서는 그냥 범위만 바꿔주면 끝입니다.

둘 중 뭘 써야 할까

상황추천 함수
회사에서 오래된 버전의 엑셀을 쓴다 VLOOKUP
최신 마이크로소프트 365를 쓴다 XLOOKUP
찾는 값이 표의 왼쪽 열에 없다 XLOOKUP
오류 표시 없이 깔끔하게 처리하고 싶다 XLOOKUP
다른 사람과 협업하는 파일이라 호환성이 중요하다 VLOOKUP (더 널리 알려져 있어 다른 사람이 이해하기 쉬움)

개인적으로는 회사 공용 PC나 오래된 버전 엑셀을 쓰는 곳이 아직도 많아서, 두 함수를 다 알아두시는 걸 추천합니다. XLOOKUP이 안 열리는 회사도 은근히 많거든요.

자주 하는 실수 정리

  • 범위를 절대참조($ 표시)로 안 고정해서, 수식을 복사했을 때 범위가 밀리는 경우: 찾을 범위는 보통 고정되어야 하므로 F4를 눌러 명단!명단! A:$C 처럼 고정해주는 습관을 들이는 게 좋습니다.
  • 텍스트와 숫자 형식이 안 맞아서 못 찾는 경우: 사번이 셀에는 숫자로, 다른 표에는 텍스트로 저장되어 있으면 VLOOKUP/XLOOKUP 모두 값을 못 찾습니다. 이럴 때는 형식을 통일해주거나 VALUE, TEXT 함수로 변환해줘야 합니다.
  • 범위에 빈 칸이나 중복된 값이 있는 경우: VLOOKUP과 XLOOKUP 모두 기본적으로 가장 처음 찾은 값 하나만 가져오기 때문에, 명단에 같은 사번이 두 번 들어가 있으면 의도치 않은 값이 나올 수 있습니다.

마치며

VLOOKUP과 XLOOKUP은 결국 "표에서 원하는 정보를 자동으로 찾아오는" 같은 목적의 함수입니다. 처음에는 문법이 낯설게 느껴질 수 있지만, 한 번 직접 회사 업무 파일에 적용해보시면 왜 다들 이 함수를 그렇게 강조하는지 체감하실 수 있을 겁니다. 자동화 도구나 매크로도 결국 이런 기본 함수를 이해하고 있어야 제대로 활용할 수 있으니, 시간을 들여서라도 꼭 손에 익혀두시길 추천드립니다.