엑셀에서 LOOKUP 함수를 사용하다 보면, 특정 값(예: 1000 이하)을 찾지 못하는 경우가 있습니다. 이럴 때 왜 이런 현상이 발생하는지, 그리고 어떻게 해결할 수 있는지 알아 보겠습니다.
LOOKUP 함수의 동작 원리
- LOOKUP 함수는 찾을 범위가 반드시 오름차순으로 정렬되어 있어야 합니다.
- 찾으려는 값이 정확히 없으면, 작거나 같은 값 중 가장 큰 값을 반환합니다.
- 만약 범위 내에 1000 이하의 값이 없으면, 결과가 오류 또는 엉뚱한 값이 나올 수 있습니다.
문제 상황 예시
=LOOKUP(1000, A2:A10, B2:B10)
위 식에서 A2:A10 범위에 1000 이하의 값이 없다면, LOOKUP 함수는 값을 찾지 못합니다.
해결 방법
-
범위 확인 및 정렬
찾을 범위(A2:A10)가 오름차순으로 정렬되어 있는지 확인하세요. -
VLOOKUP, INDEX+MATCH, XLOOKUP 활용
보다 유연한 함수(VLOOKUP, INDEX+MATCH, XLOOKUP)를 사용하면 정확한 값을 찾을 수 있습니다. -
배열 수식 활용
여러 조건이나 특정 값 이하만 찾고 싶을 때는 아래와 같이 배열 수식을 사용할 수 있습니다.
=LOOKUP(1, 1/(A2:A10<=1000), B2:B10)
위 수식은 A2:A10 범위에서 1000 이하인 값 중 마지막에 해당하는 B열 값을 반환합니다.
참고 예시
A열 (기준값) | B열 (결과값) |
---|---|
800 | Apple |
1200 | Banana |
1500 | Orange |
위 표에서 1000 이하의 값을 찾고 싶다면,
=LOOKUP(1, 1/(A2:A4<=1000), B2:B4)
를 입력하면 Apple이 반환됩니다.
정리
- LOOKUP 함수는 오름차순 정렬과 값의 존재 여부가 중요합니다.
- 조건에 맞는 값을 제대로 찾으려면 배열 수식이나 다른 함수(VLOOKUP, INDEX+MATCH, XLOOKUP)를 활용하세요.