엑셀 OR 함수는 여러 조건 중에서 하나라도 만족하는지 판별할 때 사용하는 논리 함수입니다. 예를 들어 여러 목표 중에 하나라도 달성한 영업사원에게 인센티브를 지급여부를 판별할 때 OR 함수를 사용할 수 있습니다.
OR 함수와 달리 AND 함수는 여러 조건을 모두 만족하는지 판별할 때 사용합니다.
구문(Syntax)
OR(logical1, [logical2], …)
여러 조건 중에서 하나라도 만족하면 TRUE를 반환하고, 조건을 하나도 만족하지 못하면 FALSE를 반환한다.
인수 :
- Logical1 : 첫 번째 판별 조건으로, TRUE 또는 FALSE가 될 수 있다.
- Logical2, … : 첫 번째 판별 조건과 마찬가지로 TRUE 또는 FALSE로 평가될 수 있는 추가 판별 조건, 2번째, 3번째… 인수를 연속적으로 입력할 수 있고 최대 255개까지 가능
사용 예
1) OR 함수로 TRUE, FALSE 판별하기
영업사원이 아래 두 가지 목표 중에 하나라도 달성하면 인센티브를 지급하기로 했습니다. 인센티브를 계산하기 전에 OR 함수로 인센티브 지급 대상인지를 먼저 판별해 보겠습니다.
- 판매목표 달성(D열의 판매실적이 C열의 판매목표보다 크거나 같으면)
- 이익율 20%이상 달성(F열의 이익율이 20%보다 크거나 같으면)
=OR(D6>=C6,F6>=20%)
위 수식은 조건을 하나라도 만족하면 TRUE(지급 대상)를 반환하고, 하나도 만족하지 못하면 FALSE(지급 대상 아님)를 반환합니다
이승기, 남주희는 판매목표 300만원 미달성이지만 이익율은 20%이상을 달성했으므로 결과는 TRUE가 되고
박해미는 판매목표 미달성, 이익율도 미달성이라서 조건을 하나도 만족하지 못하여 결과는 FALSE가 됩니다.
위에서는 두 가지 조건 중에서 하나라도 만족하는지 판별했지만 다음과 같이 세 가지 조건 중에서 하나라도 만족하는지 판별할 수도 있습니다. 판별 조건은 최대 255개까지 추가할 수 있습니다.
- 판매목표 달성(D열의 판매실적이 C열의 판매목표보다 크거나 같으면)
- 이익율 20%이상 달성(F열의 이익율이 20%보다 크거나 같으면)
- 이익 50만원 이상 달성
=OR(D12>=C12,F12>=20%,E12>=500000)
이승기, 남주희, 박해미 모두 세가지 조건 중에 하나는 만족하므로 결과는 모두 TRUE(지급 대상)가 반환됩니다.
2) IF, OR 함수로 인센티브 계산하기
앞에서 구한 TRUE, FALSE 값 자체만으로는 인센티브 지급 여부만 알 수 있을 뿐 인센티브 금액은 계산할 수 없으니 IF 함수와 OR 함수를 이용해서 인센티브를 계산해 보겠습니다.
영업사원 이승기의 인센티브 계산을 위해 [G20] 셀에 다음과 같이 수식을 입력합니다.
=IF(OR(D20>=C20,F20>=20%),D20*5%,0)
이승기는 판매목표 300만원 미달성이지만 이익율은 20%이상을 달성하여 수식에서 파란색 부분의 결과는 TRUE가 되므로 수식을 다음과 같이 바꿔 쓸 수 있습니다.
=IF(TRUE,D20*5%,0)
풀이해 보면
'OR(D20>=C20,F20>=20%)'로 입력한 수식의 결과가 TRUE가 되고, [D20](판매실적)에 5%를 곱하여 이승기의 인센티브 125,000원을 계산해 줍니다.
영업사원 박해미의 경우에는 판매 목표와 이익률 목표 중에 하나도 충족하지 못하여 다음과 같이 OR 함수의 결과가 FALSE이므로 인센티브가 0원으로 계산됩니다.
=IF(OR(D22>=C22,F22>=20%),D22*5%,0)
=IF(FALSE,D22*5%,0)
두 가지 조건이 아니라 세 가지, 네 가지 등 여러 개의 조건중에서 하나라도 만족하는지 판별할 때는 다음과 같이 OR 함수에 조건을 계속 추가하면 됩니다. 판별 조건은 최대 255개까지 추가할 수 있습니다.
=IF(OR(D26>=C26,F26>=20%,E26>=500000),D26*5%,0)
앞에서 박해미는 판매목표와 이익율 목표 중에 하나도 충족하지 못하여 인센티브를 받지 못했지만, 이번에는 세 가지 조건 중 이익 50만원 이상 달성 조건을 달성했으므로 인센티브 지급대상이 됩니다.
관련 글