내 수식에서 꽤 많이 사용하는 Excel 함수 중 하나 는 IF 함수입니다. IF 함수는 논리 조건을 테스트하고 논리 조건이 TRUE 또는 FALSE 를 반환하는지 여부에 따라 두 가지 다른 결과를 생성 하는 데 사용됩니다 .
아래의 휴대폰 판매 표를 예로 들어보겠습니다. 여기에서 예제 파일 을 다운로드할 수 있습니다 .
단일 조건의 IF 함수(IF Function
with Single Condition)
판매가 이루어진 위치( D 열 )에 따라 각 판매 행에 대한 (Column D)수수료(Commission Fee) 를 계산해야 하는 시나리오를 고려하십시오 . 판매가 미국(USA) 에서 이루어진 경우 수수료(Commission Fee) 는 10%이고, 그렇지 않은 경우 나머지 지역에는 5%의 수수료 가 있습니다.(Commission Fee)
셀 F2(Cell F2) 에 입력해야 하는 첫 번째 수식은 아래와 같습니다.
=IF(D2="USA", E2*10%, E2*5%)
공식 분석:
- =IF( – “=” 는 셀의 수식 시작을 나타내고 IF 는 우리가 사용하는 Excel 함수입니다.
- D2=”USA” – 수행하는 논리적(Logical) 테스트(즉, D2 열의 데이터 가 USA 인 경우 ).
- E2*10% – 초기 논리 테스트 결과 가 (Result)TRUE (즉, (TRUE)D2 열의 값 이 USA 임) 인 경우 수식에 의해 반환되는 결과입니다 .
- E2*5% – 초기 논리 테스트 결과 가 (Result)FALSE 인 경우(즉, (FALSE)D2 열의 값 이 미국(USA) 이 아님(NOT) ) 수식에 의해 반환되는 결과입니다 .
- ) – 수식의 끝을 나타내는 닫는 대괄호.(Closing)
그런 다음 셀 F2 의 수식을 (Cell
F2)F(Column
F) 열의 나머지 행으로 복사하면 IF 논리 테스트가 각 행에 대해 TRUE 또는 FALSE 를 반환 하는지 여부에 따라 10% 또는 5%씩 각 행에 대한 수수료(Commission
Fee) 를 계산합니다 . 열.
여러 조건이 있는 IF 함수(IF Function with Multiple Conditions)
각 조건에 대해 다른 결과가 반환되는 둘 이상의 논리 조건을 테스트해야 하는 규칙이 조금 더 복잡하다면 어떻게 될까요?
엑셀(Excel) 에 답이 있습니다! 중첩 IF(Nested IF) 라고도 하는 동일한 셀 내에서 여러 IF 기능 을 결합할 수 있습니다 .
아래와 같이 각 판매 위치 에 대해 (Sales Location)수수료(Commissions) 가 다른 유사한 시나리오를 고려하십시오 .
- 미국(USA) 10%
- 호주(Australia) 5%
- 싱가포르(Singapore) 2%
셀 F2(Cell F2) (나중에 동일한 열 F의 나머지 행에 복사됨)에 다음과 같이 수식을 입력합니다 .
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))
공식 분석:
- =IF( – IF 문을 사용하는 공식의 시작(Beginning)
- D2=”USA” – 수행하는 첫 번째(First) 논리적 테스트(즉, D2 열의 데이터 가 USA 인 경우 ).
- E2*10% – 초기 논리 테스트 결과 가 (Result)TRUE (즉, (TRUE)D2 열의 값 이 USA 임) 인 경우 수식에 의해 반환되는 결과입니다 .
- IF(D2=”Australia”,E2*5%,E2*2%) – 초기 논리 테스트가 FALSE 인 경우 평가될 두 번째 Excel IF 문 (즉, D2 열의 값이 NOT USA 임). 이것은 셀 (Cell)D2 의 값 이 Australia 인 경우 (Australia)E2*5% 의 결과 가 반환 되는 이 기사의 앞부분에서 논의한 "단일 조건의 IF 함수(IF Function with Single Condition”) "와 유사한 구문입니다 . 그렇지 않고 값이 Australia 가 아니면 함수는 E2*2%.
- ) – 첫 번째 IF 함수 에 대한 공식의 끝을 나타내는 닫는 대괄호.(Closing)
Excel 은 왼쪽에서 오른쪽으로 수식을 평가하므로 논리적 테스트(예: D2="USA")가 충족 되면 D2=“USA”, 가 중지되고 결과를 반환하고 이후의 논리적 테스트(예: D2=“Australia” . )
따라서 첫 번째 논리적 테스트가 FALSE 를 반환하면 (즉, 위치가 USA 가 아님 ) 두 번째 논리적 테스트를 계속 평가합니다. 두 번째 논리적 테스트 에서도 FALSE 를 반환하면(즉, 위치가 오스트레일리아 가 아님) (Australia)셀 D2(Cell D2) 에서 가능한 유일한 값 은 싱가포르(Singapore) 이므로 더 테스트할 필요가 없으므로 결과를 E2*2% 반환해야 합니다 .
명확성을 원하는 경우 세 번째 논리 테스트 IF(D2=”Singapore”, “value if TRUE” , “value if FALSE”) 를 추가할 수 있습니다 . 따라서 전체 확장 공식은 다음과 같습니다.
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,IF(D2="Singapore",E2*2%)))
앞에서 언급했듯이 위의 결과는 우리가 가진 초기 공식과 동일한 결과를 반환합니다.
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))
빠른 팁(Quick Tips)
- 모든 단일 IF( 함수에는 여는 대괄호가 있어야 합니다. 위의 예 중 하나에 따라 세 개의 IF 함수가 있는 경우 공식에는 세 개의 닫는 대괄호 ")))" 가 필요 하며, 각각은 다음의 끝을 표시합니다. 해당 여는 IF( 문.
- 논리적 테스트의 두 번째 결과를 지정하지 않으면(논리적 테스트가 FALSE 인 경우) (FALSE)Excel 에서 할당한 기본값 은 텍스트 "FALSE"가 됩니다. (“FALSE”.)따라서 공식 =IF(D2=”USA”,E2*10%)D2 가 "USA" 가 아닌 경우 텍스트 "FALSE" 를 반환합니다 .
- 각기 다른 결과를 가진 여러 개의 다른 논리적 테스트가 있는 경우 위의 예와 유사하게 IF 함수를 차례로 여러 번 결합/중첩할 수 있습니다.
How to Use If and Nested If Statements in Excel
One Excel function that I use quite a bit in my formulas is the IF function. The IF function is used to test a logical condition and produce two different results depending on whether the logical condition returns TRUE or FALSE.
Let’s use the mobile phone sales table below as an example. You can download the example file here.
IF Function
with Single Condition
Consider a scenario where you need to calculate the Commission Fee for each sales row, depending on where the sales was made (Column D). If the sales was made in the USA, the Commission Fee is 10%, otherwise the remaining locations will have Commission Fee of 5%.
The first formula that you need to enter on Cell F2 is as shown below:
=IF(D2="USA", E2*10%, E2*5%)
Formula
breakdown:
- =IF( – The “=” indicates the beginning of a formula in the cell and IF is the excel function that we are using.
- D2=”USA” – Logical test that we perform (i.e. if data in column D2 is USA).
- E2*10% – Result that will be returned by the formula if the initial logical test results in TRUE (i.e. value in column D2 is USA).
- E2*5% – Result that will be returned by the formula if the initial logical test results in FALSE (i.e. value in column D2 is NOT USA).
- ) – Closing bracket indicating the end of the formula.
Then
you can copy down the formula from Cell
F2 to the rest of the rows in Column
F and it will calculate the Commission
Fee for each line, either by 10% or 5% dependent on whether the IF logical test returns TRUE or FALSE on each row.
IF Function with Multiple Conditions
What if the rules were a bit more complicated where you need to test for more than one logical condition with different results being returned for each condition?
Excel has an answer to this! We can combine multiple IF functions within the same cell, which is sometimes known as a Nested IF.
Consider a similar
scenario where the Commissions are
different for each Sales Location as
below:
- USA 10%
- Australia 5%
- Singapore 2%
In Cell F2 (which later will be copied to the rest of the rows in the same column F), enter the formula as follow:
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))
Formula
breakdown:
- =IF( – Beginning of the formula using an IF statement
- D2=”USA” – First logical test that we perform (i.e. if data in column D2 is USA).
- E2*10% – Result that will be returned by the formula if the initial logical test results in TRUE (i.e. value in column D2 is USA).
- IF(D2=”Australia”,E2*5%,E2*2%) – second Excel IF statement that will be assessed if the initial logical test resulted in FALSE (i.e. value in column D2 is NOT USA). This is a similar syntax of “IF Function with Single Condition” discussed earlier in this article where if value on Cell D2 is Australia, the result of E2*5% will be returned. Otherwise, if the value is not Australia, the function will return result of E2*2%.
- ) – Closing bracket indicating the end of the formula for the first IF function.
As Excel will assess the formula from the left to the right, when a logical test is met (e.g. D2=“USA”, the function will stop and return the result, ignoring any further logical test after (e.g. D2=“Australia”.)
So if the first logical test returns FALSE (i.e. location is not USA), it will continue to assess the second logical test. If the second logical test returns FALSE as well (i.e. location is not Australia), we do not need to test further as we know the only possible value on Cell D2 is Singapore hence it should return a result of E2*2%.
If you prefer for clarity, you can add the third logical test IF(D2=”Singapore”, “value if TRUE” , “value if FALSE”). Therefore, the full extended formula is as shown below:
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,IF(D2="Singapore",E2*2%)))
As
mentioned earlier, the above will return the same result as the initial formula
that we had.
=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))
Quick Tips
- For every single IF( function, there needs to be an opening and closing round bracket. When there are three IF functions as per one of the examples above, the formula will need three closing brackets “)))”, each marking the ending of a corresponding opening IF( statement.
- If we do not specify the second outcome of the logical test (when the logical test resulted in FALSE), the default value assigned by Excel will be the text “FALSE”. So formula =IF(D2=”USA”,E2*10%) will return the text “FALSE” if D2 is not “USA”.
- If you have several different logical tests each with its own different outcome, you can combine/nest the IF function multiple times, one after another, similar to the example above.