실무 함수의 꽃, VLOOKUP 완벽 정복 (더 이상 에러값은 없다)
신입 시절, 500명의 직원 이름이 적힌 명단과, 그들의 사번과 연락처가 적힌 또 다른 명단을 하나로 합치라는 지시를 받았습니다. 그때의 저는 VLOOKUP이라는 함수를 몰랐기 때문에, 모니터 두 대를 띄워놓고 이름 하나하나를 검색(Ctrl+F)해가며 복사하고 붙여넣는 단순 노동을 무려 3시간 동안이나 했습니다. 눈은 빠질 것 같았고, 중간에 줄을 잘못 맞춰 엉뚱한 사람의 연락처를 넣는 실수까지 저질렀죠.
나중에 선배가 단 10초 만에 함수 하나로 두 명단을 완벽하게 합치는 모습을 보고 느꼈던 허탈함과 경이로움은 지금도 잊을 수 없습니다. 직장인 엑셀은 VLOOKUP을 알기 전과 후로 나뉜다고 해도 과언이 아닙니다. 이 함수 하나만 제대로 다룰 줄 알아도 3시간 걸릴 야근을 3분으로 단축할 수 있습니다. 오늘은 엑셀 초보자들의 가장 큰 장벽이자 실무 함수의 꽃인 VLOOKUP을 아주 쉽게, 그리고 에러 없이 완벽하게 사용하는 법을 파헤쳐 보겠습니다.
VLOOKUP은 똑똑한 '도서관 사서'입니다
복잡한 영어 수식에 겁먹을 필요 없습니다. VLOOKUP(Vertical Lookup)은 수직으로 데이터를 나열한 표에서 내가 원하는 값을 대신 찾아주는 똑똑한 사서라고 생각하면 쉽습니다.
우리가 도서관 사서에게 책을 찾아달라고 할 때 어떻게 말하나요? "사서님, '해리포터'라는 책이(찾을 기준값), 저기 소설 코너(찾을 범위)의, 세 번째 책장(가져올 열 번호)에 있나요? 비슷한 거 말고 딱 그 책으로 찾아주세요(정확도)."라고 말할 것입니다. VLOOKUP 함수도 이와 똑같이 딱 4가지의 질문에만 답을 채워주면 됩니다.
=VLOOKUP(찾을 기준값, 찾을 범위, 가져올 열 번호, 0)
이 4가지 공식의 의미를 실무 상황에 맞춰 하나씩 대입해 보겠습니다.
4가지 괄호 채우기 실전 가이드
찾을 기준값 (Lookup_value): '누구'를 기준으로 찾을 것인가? 가장 먼저 선택해야 할 것은 내가 찾고자 하는 기준점입니다. 예를 들어 내 표에 '홍길동'이라는 직원이 있다면, 홍길동이 적힌 셀(예: A2)을 클릭합니다. 주의할 점은 이 기준값은 두 표에 공통으로 존재해야 한다는 것입니다. 동명이인이 있을 수 있으므로 이름보다는 고유한 '사번'이나 '제품 코드'를 기준값으로 잡는 것이 훨씬 안전합니다.
찾을 범위 (Table_array): '어디서' 찾을 것인가? (★핵심) 데이터를 가져올 원본 표의 범위를 마우스로 드래그하여 지정합니다. 여기서 초보자들이 가장 많이 하는 치명적인 실수가 두 가지 있습니다. 첫째, 찾을 범위의 '첫 번째 열(가장 왼쪽)'에는 반드시 앞서 지정한 기준값(사번 또는 이름)이 있어야 합니다. VLOOKUP은 무조건 범위의 첫 열에서만 기준값을 찾기 때문입니다. 둘째, 범위를 지정한 직후에는 무조건 키보드의 F4 키를 눌러 절대 참조($)로 묶어주어야 합니다. 그래야 수식을 아래로 자동 채우기 할 때 원본 표의 범위가 밑으로 밀려 내려가는 대참사를 막을 수 있습니다.
가져올 열 번호 (Col_index_num): '몇 번째' 데이터를 가져올 것인가? 방금 지정한 범위 안에서 내가 진짜로 가져오고 싶은 데이터(예: 연락처)가 왼쪽에서부터 몇 번째 기둥(열)에 있는지 숫자로 적습니다. 첫 번째 열이 이름(1), 두 번째가 부서(2), 세 번째가 연락처(3)라면 숫자 '3'을 적어주면 됩니다.
정확도 (Range_lookup): 비슷한 값을 찾을까, 똑같은 값을 찾을까? 마지막 칸에는 숫자 '0' (또는 FALSE)을 입력하고 괄호를 닫아줍니다. 0은 '정확히 일치하는 값만 찾아라'라는 뜻입니다. 간혹 숫자 1을 넣거나 생략하는 경우가 있는데, 그러면 엑셀이 엉뚱하고 비슷한 데이터를 마음대로 가져오므로 일반적인 사무 업무에서는 무조건 '0'을 쓴다고 외워두시면 마음이 편합니다.
왜 내 VLOOKUP은 항상 #N/A 에러가 뜰까?
수식을 완벽하게 썼는데도 얄미운 '#N/A(Not Available)' 에러가 뜬다면, 십중팔구 아래 3가지 원인 중 하나입니다.
첫 번째 원인은 앞서 강조한 'F4(절대 참조)'를 누르지 않아 참조 범위가 아래로 계속 밀려 내려갔기 때문입니다. 첫 번째 셀은 값이 잘 나왔는데 아래로 드래그할수록 에러가 뜬다면 100% 이 경우입니다.
두 번째 원인은 '보이지 않는 띄어쓰기(공백)' 때문입니다. 내 표에는 "홍길동"이라고 적혀 있는데, 원본 데이터에는 "홍길동 "처럼 이름 뒤에 스페이스바가 한 칸 들어가 있다면 엑셀은 이를 완전히 다른 글자로 인식해 찾지 못합니다. 이럴 때는 지난 2편에서 배운 '찾기 및 바꾸기(Ctrl+H)'를 이용해 공백을 모두 제거해 주어야 합니다.
세 번째 원인은 텍스트와 숫자의 형식이 다르기 때문입니다. 겉보기엔 똑같은 사번 '1234'라도, 내 표는 숫자 형식이고 원본 표는 텍스트 형식이라면 에러가 납니다. 두 데이터의 셀 서식을 똑같이 통일해 주면 마법처럼 에러가 사라집니다.
핵심 요약
VLOOKUP은 =VLOOKUP(기준값, 찾을 범위, 열 번호, 0) 4가지 요소만 순서대로 채워 넣으면 되는 조건부 검색 함수입니다.
참조할 원본 범위를 지정할 때는 무조건 F4 키를 눌러 절대 참조($)로 고정해야 수식이 엉키지 않습니다.
#N/A 에러가 발생한다면 참조 범위 고정 누락, 보이지 않는 띄어쓰기, 숫자와 텍스트 형식 불일치 문제를 가장 먼저 확인해야 합니다.
다음 편 예고 VLOOKUP은 정말 훌륭하지만 치명적인 단점이 하나 있습니다. 바로 기준값이 무조건 왼쪽 첫 번째 열에 있어야 하고, 오른쪽으로만 데이터를 찾을 수 있다는 점입니다. 다음 5편에서는 VLOOKUP의 이러한 한계를 완벽하게 부수고, 왼쪽 오른쪽 앞뒤 가리지 않고 데이터를 찾아내는 'INDEX와 MATCH 함수의 환상 조합'을 배워보겠습니다.
독자님을 위한 질문 엑셀을 다루시면서 VLOOKUP 에러 때문에 가장 당황했거나 진땀을 뺐던 경험이 있으신가요? 그때 에러의 원인이 무엇이었는지 댓글로 남겨주시면 다른 분들에게도 큰 도움이 될 것입니다!
댓글
댓글 쓰기