엑셀 vlookup 함수 사용 방법 정리
배열의 첫 번째 열에서 값을 검색하여, 지정한 열의 같은 행에서 데이터를 돌려주는 함수.
위 설명만 보면 선뜻 이해하가 되지 않을 수도 있는데 조금 더 간단하게 말하자면 vlookup 함수는 지정한 범위의 첫 번째 열에서 자신이 원하는 값을 찾아 그 값과 같은 행의 데이터를 보여주는 함수이다.
(흠... 이것도 설명이 좀 애매한가...)
엑셀 vlookup 함수 기본
우선 함수의 기본 문법은 아래와 같다.
=vlookup(lookup_value, table_array, col_index_num, [range_lookup])
lookup_value : 찾을 값을 넣는 부분.
직접 값을 넣어도 되고 셀을 지정해서 넣어도 되는데 당연히 직접 값을 넣는 경우 문자는 큰따옴표("") 사이에 넣어야 한다.
table_array : 값을 찾을 범위는 지정하는 부분.
범위를 지정할 때는 명심해야 할 점이 있는데 lookup_value 값은 지정한 범위의 첫 열에서만 찾기 때문에 이를 기준으로 범위를 지정해야 원하는 값을 얻을 수 있다.
예를 들어 table_array를 B2에서 E10까지 지정했다면 lookup_value 값은 B2에서 B10에서 찾게 되는 식이다.
또한 행이나 열에 중복 값이 있는 경우 가장 먼저 찾은 값을 기준으로 결과가 나타나는데 값을 찾는 순서는 위에서 아래로 찾는 다는 점도 알아두는 것이 좋다.
col_index_num : 범위에서 값을 찾은 경우 몇 번째 행의 값을 보여줄지를 지정하는 부분.
엑셀의 vlookup 함수는 찾은 값의 오른쪽에 있는 행의 값을 보여 줄 수 있는다는 것이 가장 큰 특징인데 col_index_num 넣은 값에 따라 그중에서 몇 번째 행의 값을 보여줄 것인지를 정할 수 있다.
예를 들면 table_array를 B2에서 E10까지 지정했을 경우 B가 있는 행이 1, C가 2, D가 3, E가 4가 되는 식으로 순차적으로 번호가 부여된다고 보면 된다.
[range_lookup] : lookup_value에서 지정한 값을 찾을 때 비슷한 값을(근사한 값) 찾을지 정확히 일치하는 값을 찾을지를 지정하는 부분.
TRUE가 비슷한 값, FALSE가 정확히 일치하는 값이며 []가 붙어있는 만큼 생략도 가능한데 생략하는 경우 lookup_value값이 숫자인 경우 기본 값은 TRUE, 문자의 경우 기본값은 FALSE이다.
(문자의 경우 TRUE를 사용할 수 없으며 넣으면 에러가 발생한다.)
사용 예
아래의 표에서 고길동의 점수를 찾아보자.
우선 lookup_value는 고길동의 점수이니 만큼 당연히 "고길동"이다.
그다음 table_array의 범위는 고길동이라는 이름을 찾아야 하기 때문에 시작범위는 이름이 있는 C3, 그리고 그의 점수를 알아야 하기 때문에 마지막 범위는 점수가 끝나는 E10까지 지정하면 된다.
범위를 지정했다면 이제 col_index_num차례인데 C3에서 E10까지 범위를 지정했다면 점수는 3번째 행에 위치하게 되니 3을 넣어주면 된다.
마지막으로 [range_lookup]는 lookup_value에서 찾는 값이 문자이기 때문에 넣어주지 않아도 되며 굳이 넣겠다면 FALSE를 넣으면 원하는 값을 찾을 수 있다.
=VLOOKUP("고길동", C3:E10, 3, FALSE)
참고로 표를 보면 고길동이 여러 번 있는 것을 볼 수 있는데 결과 값을 보면 98.216으로 가장 먼저 찾은 고길동의 값을 가져온 것을 볼 수 있을 것이다.
비슷한 방법으로 고길동의 성별을 구할 수도 있는데 수식은 거의 같으며 범위에서 성별은 두번째 행에 있기 때문에 col_index_num만 2로 변경하면 된다.
(원래대로라면 table_array의 범위도 줄여하지만 어차피 성별이 범위에 포함되기 때문에 결과에는 크게 상관 없다.)
=VLOOKUP("고길동", C3:E10, 2, FALSE)