엑셀 / 여러 조건 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에서는 지원되는 대안 수식을 사용합니다.

같은 카테고리의 다른 글
엑셀 / 함수 / SUMPRODUCT / 곱의 합 구하는 함수

엑셀 / 함수 / SUMPRODUCT / 곱의 합 구하는 함수

SUMPRODUCT로 단가·수량 등 같은 위치의 값을 곱해 합산하는 방법을 설명합니다. 배열 크기, 조건 계산과 성능 문제도 함께 확인할 수 있습니다.

엑셀 / 함수 / ISEVEN, ISODD / 짝수인지 홀수인지 확인하는 함수

엑셀 / 함수 / ISEVEN, ISODD / 짝수인지 홀수인지 확인하는 함수

ISEVEN·ISODD로 짝수와 홀수를 판단하는 방법을 설명합니다. 0, 음수, 소수의 처리와 IF를 사용한 분류 예제를 확인할 수 있습니다.

엑셀 / 피벗 테이블 / 외부 파일 시트의 데이터로 피벗 테이블 만드는 방법

엑셀 / 피벗 테이블 / 외부 파일 시트의 데이터로 피벗 테이블 만드는 방법

다른 통합 문서의 표·범위를 피벗 테이블 원본으로 지정하는 과정을 설명합니다. 파일 열림 상태·경로·권한·연결 방식에 따른 새로 고침 차이도 다룹니다.

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

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

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

엑셀 / 오름차순 정렬하기, 내림차순 정렬하기, 여러 기준으로 정렬하기

엑셀 / 오름차순 정렬하기, 내림차순 정렬하기, 여러 기준으로 정렬하기

오름차순·내림차순과 여러 정렬 기준을 설정하는 방법을 설명합니다. 범위 확장과 머리글·숫자 형식을 확인해 행의 데이터 관계가 깨지지 않도록 안내합니다.

엑셀 / 함수 / ISBLANK / 빈 셀인지 확인하는 함수

엑셀 / 함수 / ISBLANK / 빈 셀인지 확인하는 함수

ISBLANK로 실제 빈 셀을 검사하고 IF와 결합하는 방법을 설명합니다. 빈 문자열을 반환하는 수식, 공백 문자와 빈 셀의 차이를 구분할 수 있습니다.

엑셀 / 차트를 이미지 파일로 저장하는 방법

엑셀 / 차트를 이미지 파일로 저장하는 방법

Excel 차트를 복사해 PowerPoint나 그림판에서 이미지로 저장하는 방법을 설명합니다. 파일 형식, 잘림·글자 선명도와 원본 데이터 노출도 확인합니다.

엑셀 / VBA / 모듈 내보내기 가져오기

엑셀 / VBA / 모듈 내보내기 가져오기

VBA 표준 모듈을 bas 파일로 내보내 다른 통합 문서에 가져오는 방법을 설명합니다. 중복 이름, 시트 참조·라이브러리 의존성과 전체 백업의 차이도 다룹니다.

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

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

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

엑셀 / 함수 / LARGE, SMALL / k번째로 큰 값, 작은 값 구하는 함수

엑셀 / 함수 / LARGE, SMALL / k번째로 큰 값, 작은 값 구하는 함수

LARGE·SMALL로 k번째 값을 구하고 MAX·MIN과 비교합니다. 중복 숫자의 순위 처리, 잘못된 k와 빈 범위에서 발생하는 오류도 설명합니다.