[Excel] VLOOKUP 함수
업무 중에 액셀로 필자가 가장 많이 사용하는 함수는 VLOOKUP인 것 같다.
신입일 때, 이 기능을 몰라서 노가다를 했던 기억을 생각하면..... 정말 무지하면 몸이 고생한다라는 말이 공감된다.
VLOOKUP 함수는 쉽게 말해 매칭되는 값의 연관 데이터를 뽑아오는 경우 유용하게 쓰인다.
V : Vertical , LOOKUP : 찾아보다 라는 의미가 합쳐진 함수라고 보면된다.
예를 들어, 아래와 같은 데이터가 있다고 가정해보자.
주소 정보 테이블이 있고, 전화번호 정보 테이블이 따로 있다. 개수가 얼마되지 않기 때문에, 그냥 눈으로 맞추면 된다고 생각할지 모르겠지만,
데이터가 100개 넘게 있다고 생각하면 찾다가 지치고 시간낭비한다.
(전화번호 데이터 테이블은 이름이 주소테이블과 순서가 그대로가 아니기 때문..)
자! 이제 매칭해야할 전화번호 칸 Cell에서 (=VL)을 입력해보면 자동으로 함수가 나타나고, 마우스 클릭을 하면 함수에 대해서 작업 진행이 가능하다.
클릭 후, 매칭할 컬럼인 이름을 찍는다. 그러면 함수는 =VLOOKUP(A3 까지 입력되게 된다.
그 다음 콤마(,) 를 입력한 후에, 내가 매칭해야될 테이블 데이터 전체를 드래그 한다. 그러면 함수는 =VLOOKUP(A3,I3:J8 까지 생성된다.
그 다음 다시 콤마(,) 입력 후, 1(컬럼위치) 입력 후 또 다시 콤마(,) 다음 정확하게 동일한 데이터인지 비교할 경우 FALSE or 0 을 입력 후 괄호를 닫는다.
그러면 =VLOOKUP(A3,I3:J8,1,0) 으로 함수가 완성된다.
그런데 전화번호에 홍길동이 나왔다... 이유는 3번째 값에 1(컬럼위치) 때문이다. 전화번호에 있는 홍길동을 클릭하여 1을 2로 변경해보자.
그러면 홍길동의 전화번호가 정상적으로 나오는 것을 볼 수 있다.
이제 다음 값들은 드래그를 해보자. ??? 값이 안나오는 것들이 있다. 왜 어떤 값은 잘 나오고 어떤 값은 안나왔을까???
#N/A 값으로 된 Cell을 한번 찍어보자....
내가 찾고자 했던 검색범위는 I3:J8 의 범위였다. 그런데 #N/A 를 찍어보면 검색범위가 I4:J9로 한칸 밑으로 밀린 것을 볼 수 있다.
드래그 하면서 검색범위도 한칸씩 밀리는 것이다.
그래서 검색범위를 드래그하더라도 고정되도록 해 줄 필요가 있다. 바로 $를 사용하면 된다.
첫번째 전화번호 함수에서 =VLOOKUP(A3,I3:J8,2,0) ==>> =VLOOKUP(A3,$I$3:$J$8,2,0) 이렇게 검색범위 위치에 $를 넣어 고정시켜줘보자.
그리고 다시 드래그를 해보면 짜잔~ 정상적으로 각 이름의 전화번호를 정확하게 가져오는 것을 볼 수 있다.
당연히 알고 있을 것 같지만 모르고 있는 사람도 많다. 나도 신입 때 몰랐으니.... 반드시 이번 기회에 알아두도록 하자!!!