티스토리 뷰

Excel 함수

[엑셀] vlookup, hlookup

sue.kim 2017. 5. 9. 23:09


수많은 리스트에서 내가 원하는 코드에 맞는 값을 찾아야 할 때가 있다.


예를 들면, 우리 회사에서 관리하는 상품의 수가 대략 100개 정도 된다고 하자. 

이때에, 거래명세표를 작성하며 상품코드( ex.  FW_0001 같은)를 기입하면 그에 대한 정보(색상, 가격, 재고 등)을 찾아야 한다. 


이때, 그 값을 찾아주는 함수로 사용할 수 있는 것이 바로 이 lookup함수이다. 



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

배열의 첫 열에서 값을 검색하여, 지정한 열의 같은 행에서 데이터를 추출합니다. 기본적으로 오름차순으로 표가 정렬됩니다. 


  • lookup_value : 찾고자 하는 값, 값 자체를 넣을 수도 있고, 절대참조 또는 혼합참조를 통해 다른 셀에서 값을 불러와서 검색할 수도 있다. 
  • table_array : 값을 찾고자 하는 범위 값 
  • col_index_num : lookup_value를 사용해 찾은 행의 몇번째 열의 값을 가져올 것인가를 숫자로 표시,
    table_array의 첫번째 열을 1이라고 인식하고 순서대로 숫자를 계산하여 입력하면 된다. 
  • [range_lookup] : 정확하게 일치하는 값을 찾고자 할 때는 false(또는 0),
    덜 정확한 값을 찾고자 할 때는 비워두거나 true(또는 1)로 표기한다. 



A2:B8의 범위에서, 첫번째 열에서 값을 검색하여 찾은 값이 위치한 행의 2번째 열의 값을 정확하게 찾아서 가져오게 하는 예제이다. 

셀 F3에서 처음 함수를 입력할 때에 table_array의 값을 절대참조로 넣어준 후, 아래로 드래그를 하면 F3에서 F5까지 동일한 범위에서 값을 찾도록 복사할 수 있다. 


range_lookup을 통해 다른 방법으로 vlookup함수를 활용 할 수도 있다. 아래 예제를 살펴보자. 



점수범위에 따라, 등급을 판별하는 예제이다. A열에 등급별 점수 범위의 최저값을 오름차순으로 정렬해주고, 각 점수 버무이에 따른 등급범위를 정해준다. 

H2에서 위와 같이, range_lookup을 작성하지 않거나 true(또는 1) 로 표기하면 정확한 값이 아닌 비슷한 값을 찾도록 하게 하므로, 각 범위에 따른 등급을 찾아 값을 작성하게 한다. 

여기서 정확한 등급을 판별하게 할 때 중요한 점은 점수를 위에서부터 아래로 오름차순으로 작성해야 한다는 것이다. 

위의 함수 설명에도 나타나 있듯이 vlookup은 기본적으로 오름차순으로 데이터를 정렬하는 속성이 있기 때문이다. 



= hlookup ( lookup_value, table_array, row_index_num, [range_lookup] ) 


배열의 첫 행에서 값을 검색하여, 지정한 행의 같은 열에서 데이터를 추출합니다. 


  • lookup_value : 찾고자 하는 값, 값 자체를 넣을 수도 있고, 절대참조 또는 혼합참조를 통해 다른 셀에서 값을 불러와서 검색할 수도 있다. 
  • table_array : 값을 찾고자 하는 범위 값 
  • row_index_num : lookup_value를 사용해 찾은 열의 몇 번째 행의 값을 가져올 것인가를 숫자로 표시,
    table_array의 첫번째 행을 1이라고 인식하고 순서대로 숫자를 계산하여 입력하면 된다. 
  • [range_lookup] : 정확하겨 일치하는 값을 찾고자 할 때는 false(또는 0 ), 덜 정확한 값을 찾고자 할 때는 비워두거나 true(또는 1) 로 표기한다.



hlookup이 vlookup과 다른 점은 vlookup은 세로(위에서 아래로) 나열된 데이터에서 값을 찾는 것이라면, hlookup은 가로(왼쪽에서 오른쪽으로)로 나열된 데이터에서 값을 찾는 다는 것이다. 


함수로 사용하는 방법은 동일하므로, 데이터의 형태에 따라 두 함수 중 적절한 함수를 사용하면 된다.

대부분 엑셀에서 데이터는 세로 방향으로 나열된 경우가 많으므로 vlookup을 활용하는 경우가 많다. 

'Excel 함수' 카테고리의 다른 글

[엑셀] if + 논리함수  (0) 2017.05.11
[엑셀] if  (0) 2017.05.10
[엑셀] count, counta, countif, countifs  (0) 2017.05.08
[엑셀] 절대참조  (0) 2017.05.06
[엑셀] sum, sumif, sumifs  (0) 2017.05.05
댓글