엑셀 vlookup 함수 사용 방법 정리

2018. 5. 18. 19:34 / 서기랑

 배열의 첫 번째 열에서 값을 검색하여, 지정한 열의 같은 행에서 데이터를 돌려주는 함수.

 위 설명만 보면 선뜻 이해하가 되지 않을 수도 있는데 조금 더 간단하게 말하자면 vlookup 함수는 지정한 범위의 첫 번째 열에서 자신이 원하는 값을 찾아 그 값과 같은 행의 데이터를 보여주는 함수이다.

 (흠... 이것도 설명이 좀 애매한가...)


엑셀 vlookup 함수 기본

 우선 함수의 기본 문법은 아래와 같다.

 =vlookup(lookup_value, table_array, col_index_num, [range_lookup])

엑셀 vlookup 함수 기본


 lookup_value : 찾을 값을 넣는 부분.

 직접 값을 넣어도 되고 셀을 지정해서 넣어도 되는데 당연히 직접 값을 넣는 경우 문자는 큰따옴표("") 사이에 넣어야 한다.

lookup_value 값


 table_array : 값을 찾을 범위는 지정하는 부분.

 범위를 지정할 때는 명심해야 할 점이 있는데 lookup_value 값은 지정한 범위의 첫 열에서만 찾기 때문에 이를 기준으로 범위를 지정해야 원하는 값을 얻을 수 있다.

 예를 들어 table_arrayB2에서 E10까지 지정했다면 lookup_value 값은 B2에서 B10에서 찾게 되는 식이다.

table_array


 또한 행이나 열에 중복 값이 있는 경우 가장 먼저 찾은 값을 기준으로 결과가 나타나는데 값을 찾는 순서는 위에서 아래로 찾는 다는 점도 알아두는 것이 좋다.


 col_index_num : 범위에서 값을 찾은 경우 몇 번째 행의 값을 보여줄지를 지정하는 부분.

 엑셀의 vlookup 함수는 찾은 값의 오른쪽에 있는 행의 값을 보여 줄 수 있는다는 것이 가장 큰 특징인데 col_index_num 넣은 값에 따라 그중에서 몇 번째 행의 값을 보여줄 것인지를 정할 수 있다.

 예를 들면 table_arrayB2에서 E10까지 지정했을 경우 B가 있는 행이 1, C가 2, D가 3, E가 4가 되는 식으로 순차적으로 번호가 부여된다고 보면 된다.

col_index_num


 [range_lookup] : lookup_value에서 지정한 값을 찾을 때 비슷한 값을(근사한 값) 찾을지 정확히 일치하는 값을 찾을지를 지정하는 부분.

 TRUE가 비슷한 값, FALSE가 정확히 일치하는 값이며 []가 붙어있는 만큼 생략도 가능한데 생략하는 경우 lookup_value값이 숫자인 경우 기본 값은 TRUE, 문자의 경우 기본값은 FALSE이다.

 (문자의 경우 TRUE를 사용할 수 없으며 넣으면 에러가 발생한다.)

[range_lookup]


사용 예

 아래의 표에서 고길동의 점수를 찾아보자.

사용 예제


 우선 lookup_value는 고길동의 점수이니 만큼 당연히 "고길동"이다.

 그다음 table_array의 범위는 고길동이라는 이름을 찾아야 하기 때문에 시작범위는 이름이 있는 C3, 그리고 그의 점수를 알아야 하기 때문에 마지막 범위는 점수가 끝나는 E10까지 지정하면 된다.

 범위를 지정했다면 이제 col_index_num차례인데 C3에서 E10까지 범위를 지정했다면 점수는 3번째 행에 위치하게 되니 3을 넣어주면 된다.

 마지막으로 [range_lookup]는 lookup_value에서 찾는 값이 문자이기 때문에 넣어주지 않아도 되며 굳이 넣겠다면 FALSE를 넣으면 원하는 값을 찾을 수 있다.

 =VLOOKUP("고길동", C3:E10, 3FALSE)

 참고로 표를 보면 고길동이 여러 번 있는 것을 볼 수 있는데 결과 값을 보면 98.216으로 가장 먼저 찾은 고길동의 값을 가져온 것을 볼 수 있을 것이다.

고길동 점수


 비슷한 방법으로 고길동의 성별을 구할 수도 있는데 수식은 거의 같으며 범위에서 성별은 두번째 행에 있기 때문에 col_index_num만 2로 변경하면 된다.

 (원래대로라면 table_array의 범위도 줄여하지만 어차피 성별이 범위에 포함되기 때문에 결과에는 크게 상관 없다.)

  =VLOOKUP("고길동", C3:E10, 2FALSE)

고길동 성별