엑셀 VLOOKUP으로 결과를 가져올 때, 단 하나의 조건 및 단 하나의 결과가 아닌 다중결과, 다중조건의 데이터를 접하게 됩니다.
즉, 여러 조건을 만족하는 여러 개 값 반환하는 공식에 대해 어떤 LOOKUP 방식을 사용하여 원하는 결과를 엑셀에서 어떻게 구할 수 있는지 알아보겠습니다.
엑셀 VLOOKUP 다중결과
아래의 판매 데이터처럼 판매자 이름이 중첩되는 경우에 판매자의 판매수량을 구해야 하는 경우가 있습니다.
VLOOKUP 다중조건 및 다중결과에 대한 예시를 보여 드리기 위한 위의 데이터는 테이블로 정의되어 있습니다.
엑셀 VLOOKUP으로 "홍길동"의 판매수량을 가져오고자 할 때 F2셀에 아래와 같은 구문을 명령합니다.
=VLOOKUP($E2,판매테이블,3,0)
위의 함수는 이것과 동일합니다. =VLOOKUP($E2,$A$1:$C$11,3,0)
(판매테이블은 A1:C11과 동일합니다. 데이터의 관리는 테이블로 지정하였을 때 관리가 효율적으로 가능하며, 다른 엑셀의 기능들과 호환성도 높아집니다.)
기준값으로 사용된 "홍길동"은 판매테이블에서 총 3개가 있으며, VLOOKUP을 사용한 결과 최상단의 값만 산출하였습니다.
"홍길동"의 기준값으로 불러와야 하는 값은 총 3개로, 기준값으로 불러올 수 있는 모든 결괏값을 불러오고 싶다면, FILTER함수를 사용하는 방법이 있습니다.
VLOOKUP 다중결과 산출 = FILTER 함수 사용
F2셀에 사용되는 FILTER 함수의 구문은 아래와 같습니다.
=FILTER(Table1[[#All],[판매수량]],Table1[[#All],[판매자]]=$E3)
위의 함수의 이것과 동일합니다. =FILTER($C$1:$C$11,$A$1:$A$11=$E3)
(Table1[[#All],[판매수량]]는 C1:C11 과 동일하며, Table1[[#All],[판매자]]는 A1:A11과 동일합니다.)
VLOOKUP의 다중결과를 모두 산출하기 위하여 사용한 FILTER 함수 구문의 결과로 해당 테이블에 존재하는 기준값과 연결된 모든 값을 구해 보았습니다.
여러 개 값을 구하는 공식은 FILTER 함수로 실시한다라고 인식하시면, 여러 데이터에서 좋을 툴로써 사용 가능 하실 겁니다.
엑셀 VLOOKUP 다중조건
VLOOKUP의 다중조건을 구하는 방법에 대해서 알아보겠습니다. 여러 조건에 맞는 값을 가져오기 위해서는 어떤 조건들을 어떤 값을 산출하기 위해 사용하는지가 정확해야 합니다. 아래는 다중결과에 봤던 테이블입니다.
판매자와 상품의 2가지 조건에 맞는 판매수량에 대해 구해보도록 하겠습니다.
우선 해당 테이블에 2가지의 다중조건을 비교할 수 있는"다중조건" 칸을 생성합니다.
C열에 A열의 조건과 B열의 조건을 연결합니다.
C열에 "= A조건 & "/" & B조건" 의 수식을 입력합니다.
C열의 다중조건을 이용하여 F열의 판매자 조건, G열의 상품 조건을 VLOOKUP을 이용하여 H2셀에 넣어 다중조건 결괏값을 얻습니다.
=VLOOKUP($F2&"/"&$G2,Table13[[#All],[다중조건]:[판매수량]],2,0)
위의 함수의 이것과 동일합니다. =VLOOKUP($F2&"/"&$G2,$C$1:$D$11,2,0)
조건 선택 방식으로는 조건의 리스트 기능을 추천드립니다. 리스트 기능을 사용할 시 판매자 및 상품의 조건을 선택함과 동시에 vlookup의 다중조건에 맞는 결괏값을 얻을 수 있습니다.
그렇다면, 여러 조건을 만족시키는 결괏값을 도출하기 위해서는 반드시 데이터 수정이 필요한 것일까요?
그렇지 않습니다. LOOKUP 기능을 가진 엑셀 함수는 그 종류가 많으며, 그중에 다른 함수를 선택하여 사용하는 것만으로도, 원본 데이터의 변형 없이 원하는 다중조건 결괏값을 얻을 수 있습니다.
VLOOKUP을 대체할 수 있는 첫 번째 함수는 바로 XLOOKUP입니다.
XLOOKUP의 기본적인 사용법은 아래를 참고해 주시기 바랍니다.
XLOOKUP 다중조건, 다중결과를 알아보도록 하겠습니다.
위에 언급한 것과 같이, 원본 데이터의 변형은 요구되지 않으며, G2셀에 XLOOKUP을 사용하여 아래의 함수 구문을 입력합니다.
=XLOOKUP(1,(Table13[[#All],[판매자]]=E2)*(Table13[[#All],[상품]]=F2),Table13[[#All],[판매수량]])
위의 함수의 이것과 동일합니다.
=XLOOKUP(1,($A$1:$A$11=E2)*($B$1:$B$11=F2),$C$1:$C$11)
수식의 뜻은 A열 판매자에서 E2셀 값과 같은 조건임과 동시에 B열 상품에서 F2셀 값과 같은 조건의 C열 값을 G2셀에 입력한다입니다.
VLOOKUP 다중결과, 다중조건을 해결할 수 있는 방법에 대해 알아보았습니다. 쫌 더 나아가 FILTER 함수와 XLOOKUP의 다중조건 수식에 대해서도 기초적인 부분을 공유드렸기에, LOOKUP에 있어서는 이 페이지에서 어느 정도 기초 이상의 수준을 얻어 가실 수 있을 거라고 생각합니다. 아래는 VLOOKUP 오류를 해결할 수 있는 방법에 대해서 연결해 두었습니다.
VLOOKUP 기본 정의
VLOOKUP 오류 해결
VLOOKUP TEXT로 연결
VLOOKUP #N/A 해결
결론
엑셀 VLOOKUP 다중결과와 다중조건뿐만 아니라 LOOKUP 함수의 대표 INDEX MATCH를 시작으로 PIVOT 사용 전 많이 쓰이는 엑셀 함수들의 다양한 응용 및 활용에 대해서 계속적으로 업데이트하도록 하겠습니다.
아래는 추가된 INDEX MATCH 링크입니다.
'엑셀' 카테고리의 다른 글
엑셀 INDEX MATCH 함수 정의 및 활용 (VLOOKUP 대체 함수) (0) | 2023.06.15 |
---|---|
엑셀 VLOOKUP 다중결과 다중조건 최댓값 최솟값 불러오기 (1) | 2023.06.14 |
엑셀 조건부서식 사용방법 (0) | 2023.06.11 |
엑셀 PDF 변환하는 방법(윈도우, 맥북) (0) | 2023.06.10 |
엑셀 SUMIFS 함수 정의 및 구문, 활용 방법 (엑셀 더하기 함수) (0) | 2023.06.09 |