엑셀 함수 > 찾기 및 참조영역 함수 > LOOKUP 함수 - 범위에서 값 찾기

LOOKUP 함수 - 범위에서 값 찾기

엑셀 LOOKUP 함수는 이름 그대로 뭔가를 찾는 함수입니다. 비슷한 함수로 VLOOKUP, HLOOKUP이 있습니다. 이들 함수와 사용법도 비슷하고 기능도 비슷하지만 LOOKUP 함수는 자료가 오름차순으로 정렬되어 있어야  하는 단점이 있는 반면 LOOKUP 함수 벡터형을 이용하면 VLOOKUP 함수와 달리 찾는 범위가 가장 왼쪽에 있지 않아도 되는 장점도 있습니다.

LOOKUP 함수는 별도의 범위에서 값을 찾는 벡터형과 같은 범위에서 값을 찾는 배열형이 있습니다.

이번 글에서는 다음과 같은 표가 있을 때 취득 점수별 성적등급을 구하는 방법을 알아보겠습니다.

LOOKUP 함수로 성적등급 구하기

실습용 엑셀파일 다운로드 : 엑셀-LOOKUP-함수-범위에서-값찾기.xlsx

 

1. LOOKUP - 벡터형

구문(Syntax)

LOOKUP(lookup_value, lookup_vector, [result_vector])

LOOKUP의 벡터형은 한 개의 행이나 한 개의 열로 이루어진 범위(벡터)에서 값을 찾고, 한 개의 행이나 한 개의 열로 이루어진 두 번째 범위의 같은 위치에서 값을 반환한다.

인수 :

  • lookup_value : 찾는 값
  • lookup_vector : 찾는 범위, 하나의 행이나 열로 된 범위, lookup_vector안에 있는 값은 0,1,2…. A,B,C, 가나다… 의 형태로 오름차순으로 정렬되어 있어야 한다. 대소문자는 구별하지 않는다.
  • result_vector : 하나의 행이나 열로 된 범위. lookup_vector와 같은 행 또는 열에 있는 값이 반환된다.

 

사용 예

1) 일치하는 값 찾기

다음 표에서 취득 점수가 90점일 때 성적등급을 구하려면

LOOKUP 함수로 일치하는 값 찾기(벡터형)

다음과 같이 수식을 입력합니다.

=LOOKUP(90,B5:B13,C5:C13) => 'A0'

취득점수 범위에서 90을 찾은 후 성적등급 열에서 같은 행의 'A0'를 구해줍니다.

 

'A0'가 구해지는 과정을 자세히 살펴보면 다음과 같습니다.

① 취득점수가 있는 범위 [B5:B13] (lookup_vector)에서 90점을 찾아서(lookup_value)
② 같은 행에 있는 성적등급 범위 [C5:C13] (result_vector)에서 'A0'를 찾는다.

LOOKUP 함수로 일치하는 값 찾기(벡터형)

 

2) 근사값 찾기

이번에는 일치하는 값이 아닌 근사값  83점의 성적등급을 찾으려면

LOOKUP 함수로 근사값 찾기(벡터형)

다음과 같이 수식을 입력합니다.

=LOOKUP(83,B5:B13,C5:C13) => 'B0'

83을 찾았지만 없으므로 83점보다 작거나 같은 값인 80을 찾아 같은 행의 'B0'를 구해줍니다.

 

'B0'가 구해지는 과정을 자세히 살펴보면 다음과 같습니다.

① 취득점수가 있는 범위 [B5:B13] (lookup_vector)에서83점을 찾는데(lookup_value), 83점이 취득점수 범위에 없으므로 83점보다 작은 값 중에 가장 가까운 값, 즉 근사값 80점을 찾아서
② 같은 행에 있는 성적등급 범위 [C5:C13] (result_vector)에서 'B0'를 찾는다.

LOOKUP 함수로 근사값 찾기(벡터형)

 

 


2. LOOKUP - 배열형

구문(Syntax)

LOOKUP(lookup_value, array)

LOOKUP의 배열형은 배열의 첫 번째 행이나 열에서 지정된 값을 찾고, 배열의 마지막 행이나 열의 같은 위치에서 값을 반환한다.

인수 :
– lookup_value : 찾는 값
– array : 찾는 범위, lookup_value와 비교할 텍스트, 숫자 또는 논리값을 포함하는 셀 범위이며 0,1,2…. A,B,C, 가나다… 의 형태로 오름차순으로 정렬되어 있어야 한다. 대소문자는 구별하지 않는다.

 

사용 예

1) 일치하는 값 찾기

다음 표에서 취득 점수가 90점일 때 성적등급을 구하려면

LOOKUP 함수로 일치하는 값 찾기(배열형)

다음과 같이 수식을 입력합니다.

=LOOKUP(90,B5:C13) => 'A0'

취득점수 범위에서 90을 찾은 후 성적등급 열에서 같은 행의 'A0'를 구해줍니다.

 

'A0'가 구해지는 과정을 자세히 살펴보면 다음과 같습니다.

① 취득점수가 있는 범위 [B5:C13] (array)에서 90점(lookup_value)을 찾아서
array의 같은 행에 있는 마지막 열인 C열에서 'A0'를 찾는다

LOOKUP 함수로 일치하는 값 찾기(배열형)

 

2) 근사값 찾기

이번에는 일치하는 값이 아닌 근사값  77점의 성적등급을 찾으려면

LOOKUP 함수로 근사값 찾기(배열형)

다음과 같이 수식을 입력합니다.

=LOOKUP(77,B5:C13) => 'C+'

취득점수 범위에서 77을 찾았지만 없으므로 77점보다 작거나 같은 값인 75을 찾아 같은 행의 C+를 구해줍니다.

 

'C+'가 구해지는 과정을 자세히 살펴보면 다음과 같습니다.

① 취득점수가 있는 범위 [B5:C13] (array)에서 77점(lookup_value)을 찾는데, 77점이 취득점수 범위에 없으므로 77점보다 작은 값 중에 가장 가까운 값, 즉 근사값 75점을 찾아서
array의 같은 행에 있는 마지막 열인 C열에서 'C+'를 찾는다.

LOOKUP 함수로 근사값 찾기(배열형)

 

주의) 배열형에서 범위를 잘못 지정하면?

LOOKUP 함수 배열형은 배열의 마지막 행이나 열의 같은 위치에서 값을 구해 줍니다.

따라서 다음과 같이 범위를 점수구간까지 지정하면 '성적등급'이 아니라 마지막 열의 '점수구간'이 구해지므로 주의가 필요합니다.

LOOKUP 함수에서 범위를 잘못지정하면 엉뚱한 값이 나옴

=LOOKUP(90,B5:D13) => '90~94'

 

'90~94'가 구해지는 과정을 자세히 살펴보면 다음과 같습니다.

① 취득점수가 있는 범위 [B5:D13] (array)에서 90점(lookup_value)을 찾아서
array의 같은 행에 있는 마지막 열인 D열에서 '90~94'를 찾는다

LOOKUP 함수에서 범위를 잘못지정하면 엉뚱한 값이 나옴

 

 

[ 찾기 및 참조영역 함수 목록 ]

엑셀웍스 책 출간 안내

그동안 엑셀웍스에 올린 '엑셀 강좌', '함수 사용법', 여러 '실무 예제'에서 핵심만 뽑아 '된다! 엑셀 수식 & 함수' 책으로 출간하였습니다.

 자세히 보기

온라인 구매처: 예스24   교보문고   알라딘 

댓글 남기기

Scroll to Top