엑셀에서 VLOOKUP 함수는 매우 널리 사용되는 기능 중 하나입니다. 주로 제품 ID나 고객 ID처럼 정확히 일치하는 항목을 검색할 때 활용되지만, 이 글에서는 값의 범위를 기준으로 VLOOKUP을 사용하는 방법을 자세히 알아보겠습니다.
예시 1: VLOOKUP을 활용한 시험 점수 기반 등급 부여
시험 점수 목록이 있고, 각 점수에 해당하는 등급을 부여해야 하는 상황을 가정해 봅시다. A열에는 실제 시험 점수가 나열되어 있고, B열은 계산된 문자 등급을 표시하는 데 사용됩니다. 또한, D열과 E열을 이용하여 각 문자 등급을 얻기 위한 점수 범위를 나타내는 표를 추가했습니다.
VLOOKUP 함수를 이용하면 D열에 명시된 점수 범위를 참조하여, E열의 문자 등급을 각 시험 점수에 정확하게 할당할 수 있습니다.
VLOOKUP 함수 구조
예시에 적용하기 전에, VLOOKUP 함수의 기본적인 문법을 먼저 살펴봅시다.
=VLOOKUP(찾을값, 참조범위, 열번호, [범위인정여부])
위 수식에서 사용되는 변수들은 다음과 같습니다.
찾을값: 찾고자 하는 값으로, 이 예시에서는 A2 셀부터 시작하는 A열의 시험 점수입니다.
참조범위: 찾을값과 반환값이 포함된 테이블입니다. 여기서는 점수와 등급이 포함된 D2:E7 범위입니다.
열번호: 결과값으로 반환할 열의 번호입니다. B열에 등급을 표시해야 하지만 VLOOKUP 함수는 숫자를 요구하므로, 여기서는 2가 됩니다.
범위인정여부: 찾을 값이 정확하게 일치하지 않아도 되는지 여부를 결정하는 논리값입니다. 범위 조회를 하고 있으므로, ‘TRUE’ 또는 1을 사용합니다.
이 예시에서 완성된 수식은 다음과 같습니다.
=VLOOKUP(A2,$D$2:$E$7,2,TRUE)
수식을 B열 아래로 복사할 때 참조 범위가 변하지 않도록 절대 참조($)를 사용했습니다.
주의 사항
VLOOKUP 함수를 사용하여 값의 범위를 검색할 때는 참조 범위의 첫 번째 열(여기서는 D열)이 반드시 오름차순으로 정렬되어 있어야 합니다. 이 순서를 기반으로 함수가 올바른 범위를 찾아 값을 할당합니다.
아래 이미지는 점수가 아닌 등급 문자로 테이블을 정렬했을 때의 잘못된 결과 예시입니다.
범위 조회 시에만 정렬 순서가 중요하며, VLOOKUP 함수의 마지막 인수에 FALSE를 사용하면 정렬 순서에 영향을 받지 않는다는 점을 명확히 알아두어야 합니다.
예시 2: 고객 지출 금액에 따른 할인율 제공
이번에는 판매 데이터가 있다고 가정해 보겠습니다. 각 판매 금액에 대해 서로 다른 할인율을 적용하고자 하며, 할인율은 지출 금액에 따라 달라집니다.
조회 테이블(D열과 E열)에는 각 지출 구간별 할인율 정보가 들어 있습니다.
아래의 VLOOKUP 함수를 사용하여 각 판매 금액에 따른 올바른 할인율을 반환할 수 있습니다.
=VLOOKUP(A2,$D$2:$E$7,2,TRUE)
이 예시는 할인 금액을 계산하는 데 사용할 수 있다는 점에서 더욱 흥미롭습니다.
엑셀 사용자들은 이와 같은 조건부 로직을 처리하기 위해 복잡한 수식을 작성하는 경우가 많지만, VLOOKUP 함수는 이를 간결하게 처리할 수 있는 방법을 제공합니다.
아래는 판매 금액에서 VLOOKUP 함수로 얻은 할인율을 적용하여 최종 금액을 계산하는 수식입니다.
=A2-A2*VLOOKUP(A2,$D$2:$E$7,2,TRUE)
VLOOKUP 함수는 특정 직원이나 제품 정보를 검색할 때뿐만 아니라, 다양한 값의 범위를 기준으로 값을 반환해야 할 때도 매우 유용하게 활용될 수 있습니다. 이는 많은 사람들이 인지하는 것보다 훨씬 더 다양한 기능을 제공하며, 복잡한 수식을 대체하는 데도 효과적입니다.