엑셀 / 여러 조건 LOOKUP

LOOKUP에 여러 조건을 곱한 배열을 넣으면 모든 조건을 만족하는 행의 값을 찾는 수식을 만들 수 있습니다. 다만 아래 방식은 조건을 만족하는 행이 여러 개면 마지막 일치 값을 반환합니다. 첫 번째 일치·모든 결과·합계를 구하는 작업과 구분해야 합니다.

예제 수식

=LOOKUP(1,1/((A1:A4=E1)*(B1:B4=F1)),C1:C4)

A열이 E1과 같고 B열이 F1과 같은 행에서 C열 값을 가져오는 예입니다. 세 범위는 같은 행 길이로 대응되어야 합니다.

A열이 E1과 같고 B열이 F1과 같은 행에서 C열 값을 가져오는 예입니다. 세 범위는 같은 행 길이로 대응되어야 합니다.

조건 비교는 TRUE·FALSE 배열을 만들고 곱셈에서는 1·0으로 계산됩니다. 둘 다 맞는 행은 1, 하나라도 틀린 행은 0이며 1을 그 결과로 나누면 일치 행은 1, 다른 행은 나눗셈 오류가 됩니다. 이 관용 수식은 그 배열에서 마지막 일치 위치를 찾는 방식입니다.

중복과 일치하지 않는 경우

같은 조건을 만족하는 행이 여러 개이면 마지막 행의 C값이 선택됩니다. 데이터 순서를 바꾸면 반환 결과도 달라질 수 있으므로 중복을 허용할지, 최신 행이 뒤에 있는지 같은 업무 규칙을 먼저 정하세요. 일치가 없으면 #N/A 오류가 날 수 있습니다.

필요하다면 IFNA로 미일치 안내를 추가하되 원자료 오류와 조건 미일치를 모두 정상 상태로 감추지 마세요. 숫자와 텍스트의 차이·공백 때문에 같은 값처럼 보여도 조건에서 제외될 수 있습니다.

일반 LOOKUP과의 차이

일반적인 LOOKUP 조회 벡터는 오름차순 정렬 등 문서에 명시된 조건을 따라야 합니다. 위 수식은 조건 배열을 가공한 특수한 사용 방식이며, 원자료를 아무렇게나 넣는 모든 LOOKUP 수식이 정확한 조회를 한다는 뜻은 아닙니다.

구문과 지원 제품은 Microsoft의 LOOKUP 함수 설명, Microsoft의 XLOOKUP 함수 설명에서 확인할 수 있습니다.

지원 버전에서는 XLOOKUP 대안

=XLOOKUP(1,(A1:A4=E1)*(B1:B4=F1),C1:C4,"없음")

XLOOKUP의 기본 검색 방향은 앞에서부터이므로 첫 일치 값을 반환합니다. 마지막 일치를 원하면 검색 방향 인수 -1을 명시할 수 있습니다. 모든 행을 나열하려면 FILTER, 합계를 구하려면 SUMIFS처럼 목적에 맞는 도구를 선택하세요. XLOOKUP을 사용할 수 없는 Excel 2016·2019에서는 지원되는 대안 수식을 사용합니다.

같은 카테고리의 다른 글
엑셀 / 피벗 테이블 / 여러 범위로 다중 피벗 테이블 만드는 방법

엑셀 / 피벗 테이블 / 여러 범위로 다중 피벗 테이블 만드는 방법

기존 다중 통합 범위 피벗 마법사로 여러 요약 범위를 합치는 방법을 설명합니다. 필드 분석의 한계·범위 추가·새로 고침과 Power Query 대안도 다룹니다.

엑셀 / 피벗 테이블 / 만드는 방법

엑셀 / 피벗 테이블 / 만드는 방법

피벗 테이블 원자료·보고서 위치·행·열·값 영역을 설정하는 방법을 설명합니다. 합계가 개수로 나오는 이유와 데이터 추가 후 범위·새로 고침도 안내합니다.

엑셀 / 날짜를 텍스트로, 텍스트를 날짜로 변환하는 방법

엑셀 / 날짜를 텍스트로, 텍스트를 날짜로 변환하는 방법

TEXT·DATEVALUE로 날짜와 텍스트를 변환하는 방법을 설명합니다. 일련번호·표시 형식의 차이와 지역별 문자열 해석, 값으로 저장하는 과정도 다룹니다.

엑셀 / VBA / Visual Basic Editor 글꼴 변경하는 방법

엑셀 / VBA / Visual Basic Editor 글꼴 변경하는 방법

VBA 편집기의 글꼴과 크기·코드 색상을 변경하는 위치를 안내합니다. 셀 글꼴과의 차이, 한글·숫자 구분과 변경 전 설정 보관 방법도 설명합니다.

엑셀 / 함수 / SUMSQ / 제곱의 합 구하는 함수

엑셀 / 함수 / SUMSQ / 제곱의 합 구하는 함수

SUMSQ로 여러 수의 제곱합을 구하는 구문과 범위 예제를 안내합니다. 합의 제곱과의 차이, 통계의 편차 제곱합과의 구분도 설명합니다.

엑셀 / 행의 최대 개수, 열의 최대 개수, 셀의 최대 개수

엑셀 / 행의 최대 개수, 열의 최대 개수, 셀의 최대 개수

현대 Excel 워크시트의 행·열·셀 수와 마지막 셀 주소를 설명합니다. .xls의 제한과 실제 처리 용량·숫자 정밀도는 별도 조건임을 안내합니다.

엑셀 / 인쇄 / 워크시트에서 선택한 영역만 인쇄하는 방법

엑셀 / 인쇄 / 워크시트에서 선택한 영역만 인쇄하는 방법

선택 영역 인쇄와 인쇄 영역 지정의 차이를 설명합니다. 머리글·배율·미리 보기와 다음 인쇄 작업의 설정 확인을 안내합니다.

엑셀 / 함수 / DATEDIF / 두 날짜 사이의 일수, 월수, 년수 등을 계산하는 함수

엑셀 / 함수 / DATEDIF / 두 날짜 사이의 일수, 월수, 년수 등을 계산하는 함수

DATEDIF로 완성된 연수·월수와 날짜 차이를 구하는 방법을 설명합니다. 인수 순서, 공식 문서에 안내된 MD의 한계, 윤년·월말 확인 사항도 다룹니다.

엑셀 / 함수 / DELTA / 두 숫자가 같은지 비교하는 함수

엑셀 / 함수 / DELTA / 두 숫자가 같은지 비교하는 함수

DELTA가 같은 숫자에 1, 다른 숫자에 0을 반환하는 방식과 기본값을 설명합니다. 소수 계산 오차가 있는 수를 비교할 때의 한계도 다룹니다.

엑셀 / 셀 안에서 강제 줄바꿈하는 방법

엑셀 / 셀 안에서 강제 줄바꿈하는 방법

Alt+Enter로 셀 안에 줄바꿈을 넣고 표시·행 높이를 조절합니다. 자동 줄 바꿈과 실제 줄바꿈의 차이, 수식에서 생성·제거하는 방법도 설명합니다.