4월과 1월 사이에 판매된 단위 또는 Nancy에서 판매한 단위와 같이 둘 이상의 조건을 충족하는 데이터를 찾아야 하는 경우 AND 및 OR 함수를 함께 사용할 수 있습니다. 예를 들면 다음과 같습니다:
이 수식은 OR 함수 내에 AND 함수를 중첩하여 2011년 4월 1일부터 2012년 1월 1일 사이에 판매된 단위 또는 Nancy가 판매한 단위를 검색합니다. 반환을 볼 수 있습니다. True 이면 Nancy에서 판매한 단위와 수식에 지정된 날짜 동안 Tim 및 Ed가 판매한 단위도 마찬가지입니다.
복사하여 붙여넣을 수 있는 양식의 수식은 다음과 같습니다. 샘플 통합 문서에서 함께 플레이하려면 이 문서의 끝을 참조하세요.
=OR(AND(C2>DATE(2011,4,30),C2<DATE(2012,1,1)),B2="Nancy")
수식을 좀 더 자세히 살펴보겠습니다. OR 함수에는 true인지 거짓인지 확인하기 위해 테스트할 수 있는 인수 집합(데이터 조각)이 필요합니다. 이 수식에서 첫 번째 인수는 AND 함수이고 그 안에 중첩된 DATE 함수이고, 두 번째 인수는 "Nancy"입니다. 2011년 4월 30일 이후와 2012년 1월 1일 이전에 판매가 이루어졌는지 또는 Nancy가 판매했는지 확인하기 위해 테스트와 같은 수식을 읽을 수 있습니다.
AND 함수는 True 또는 False도 반환합니다. 대부분의 경우 AND를 사용하여 OR 및 IF와 같은 다른 함수의 기능을 확장합니다. 이 예제에서 OR 함수는 AND 함수가 없으면 올바른 날짜를 찾을 수 없습니다.
IF에서 AND 및 OR 사용
IF 함수와 함께 AND 및 OR를 사용할 수도 있습니다.
이 예제에서는 시장이 작은 남부 지역에서 일하지 않는 한 최소 $125,000 상당의 상품을 판매할 때까지 보너스를 받지 못합니다. 이 경우 판매액 $100,000 이후 보너스를 받을 자격이 있습니다.
=IF(OR(C4>=125000,AND(B4="South",C4>=100000))=TRUE,C4*0.12,"No bonus")
좀 더 자세히 살펴보겠습니다. IF 함수를 사용하려면 세 가지 데이터(인수)가 제대로 실행되어야 합니다. 첫 번째는 논리적 테스트이고, 두 번째는 테스트가 True를 반환하는지 확인하려는 값이고, 세 번째는 테스트가 False를 반환하는지 확인하려는 값입니다. 이 예제에서는 OR 함수와 그 안에 중첩된 모든 항목이 논리 테스트를 제공합니다. C 열의 값이 "South"가 아니면 125,000보다 크거나 같은 값을 찾은 다음, 100,000보다 큰 값을 찾은 다음 두 조건이 모두 true일 때마다 커미션 금액인 0.12를 곱합니다. 그렇지 않으면 "보너스 없음"이라는 단어를 표시합니다.
예제 데이터
이 문서의 예제를 사용하려면 다음 표를 스프레드시트의 셀 A1에 복사합니다. 제목 행을 포함하여 전체 테이블을 선택해야 합니다.
판매원 |
지역 |
판매액 |
수식/결과 |
---|---|---|---|
손 |
동쪽 |
87925 |
=IF(OR(C2>=125000,AND(B2="South",C2>=100000))=TRUE,C2*0.12,"No bonus") |
성 |
북부 |
100000 |
=IF(OR(C3>=125000,AND(B3="South",C3>=100000))=TRUE,C3*0.12,"No bonus") |
구 |
서부 |
145000 |
=IF(OR(C4>=125000,AND(B4="South",C4>=100000))=TRUE,C4*0.12,"No bonus") |
문 |
남부 |
200750 |
=IF(OR(C5>=125000,AND(B5="South",C5>=100000))=TRUE,C5*0.12,"No bonus") |
강 |
남부 |
178650 |
=IF(OR(C6>=125000,AND(B6="South",C6>=100000))=TRUE,C6*0.12,"No bonus") |
토마스 |
북부 |
99555 |
=IF(OR(C7>=125000,AND(B7="South",C7>=100000))=TRUE,C7*0.12,"No bonus") |
Keever |
동쪽 |
147000 |
=IF(OR(C8>=125000,AND(B8="South",C8>=100000))=TRUE,C8*0.12,"No bonus") |
Cassazza |
북부 |
213450 |
=IF(OR(C9>=125000,AND(B9="South",C9>=100000))=TRUE,C9*0.12,"No bonus") |
브라운리 () |
남부 |
122680 |
=IF(OR(C10>=125000,AND(B10="South",C10>=100000))=TRUE,C10*0.12,"No bonus") |
스미스버그 (미국) |
서부 |
92500 |
=IF(OR(C11>=125000,AND(B11="South",C11>=100000))=TRUE,C11*0.12,"No bonus") |
벤슨 |
동쪽 |
88350 |
=IF(OR(C12>=125000,AND(B12="South",C12>=100000))=TRUE,C12*0.12,"No bonus") |
읽기 |
서부 |
102500 |
=IF(OR(C13>=125000,AND(B13="South",C13>=100000))=TRUE,C13*0.12,"No bonus") |