Excel IF Function and IF Statements
Excel IF Function and IF Statements
(/excel/)
Search ...
*
E x c e l & V B A
Excel Tips (/excel/index.php?
option=com_content&view=category&id=77&Itemid=473)
Excel Functions (/excel/index.php?
option=com_content&view=category&id=78&Itemid=474)
Excel VBA (/excel/index.php?
option=com_content&view=category&id=79&Itemid=475)
Excel Pivot Tables (/excel/index.php?
option=com_content&view=category&id=81&Itemid=486)
*
V B A T u to ria l L o g in
Free! Excel VBA Online Tutorial
"
Excel Functions (/excel/index.php?option=com_content&view=category&id=78&Itemid=474)
Username
# Password
Excel Functions
Log in
Create an account (/excel/index.php?option=com_users&view=registration&Itemid=)
Excel IF Function and IF Statements
Forgot your password? (/excel/index.php?option=com_users&view=reset&Itemid=)
8
Vote 5 Rate
Excel IF Function and IF Statements, with Examples
Related Link: If...Then...Else Statements (VBA). (index.php?option=com_content&view=article&id=123:ifthenelsestatements
vba&catid=79&Itemid=475)
Excel IF Function:
The IF function is used to test if a condition is True or False. If a specified condition evaluates to TRUE, the IF function returns one
value, and if the condition evaluates to FALSE another value is returned..
Syntax: IF(condition, value_if_true, value_if_false)
1. condition is a value or expression which is tested to be True or False. Any of the comparison calculation operators can be used
here these operators are: = (Equal to); > (Greater than); < (Less than); >= (Greater than or equal to); <= (Less than or equal to); <>
(Not equal to).
2. value_if_true is the value that is returned by the IF function if the condition evaluates to TRUE. This value can also be a formula or
function and if left blank, the function returns zero (0).
3. value_if_false is the value that is returned by the IF function if the condition evaluates to FALSE. This value can also be a formula
or function. If this value is left blank (ie. after value_if_true there is a comma and then blank before the closing paranthesis), the IF
function will return zero (0). If this value is not mentioned (ie. after value_if_true there is no comma), the IF function will return FALSE.
4. The maximum number of IF functions that can be nested as value_if_true and value_if_false arguments is 64. Excel 2003 only
allows 7 levels of nesting of functions, while Excel 2007 allows up to 64. As alternatives to IF function and getting around its nesting
limit, you can use the excel LOOKUP, VLOOKUP or HLOOKUP functions, as shown in examples below.
5. Excel also has some other functions which can be used to return values based on a condition viz. to count the number of
occurrences within a range, use the the COUNTIF AND COUNTIFS functions; to sum a range of values use the SUMIF AND SUMIFS
functions.
Basic IF function
Table 1a
=IF(A2<40,"Failed","Passed") [Formula]
Formula returns the string "Failed". (Refer Table 1a)
If the number in cell A2 is less than 40, then the formula displays "Failed". Otherwise, the function displays "Passed".
Table 1b
=IF(A4=65,SUM(B2:B6),"") [Formula]
Formula returns the value 19, which is the sum of range B2:B6. (Refer Table 1b)
If the number in cell A4 is 65, then the sum of range B2:B6 is calculated. Otherwise, empty text ("") is returned ().
Nested IF functions
"Nesting" one IF statement within another increases the number of possible outcomes, thereby increasing the flexibility of the IF function.
Table 2a
=IF(A2>84,"Grade A",IF(A2>=70,"Grade B",IF(A2>=55,"Grade C",IF(A2>=40,"GradeD","Grade F")))) [Formula]
This formula determines the corresponding grade, of marks mentioned in cell A2. (Refer Table 2a)
Formula returns "Grade F", which corresponds to 36 Marks in cell A2.
In this formula, the second IF statement is also the value_if_false argument to the first IF statement. Similarly, the third IF statement
is the value_if_false argument to the second IF statement. For example, if the first logical_test (Marks>84) is TRUE, "A" is returned. If
the first logical_test is FALSE, the second IF statement is evaluated, and so on.
Table 2b
=IF(A2>=F3,"Grade A",IF(A2>=F4,"Grade B",IF(A2>=F5,"Grade C",IF(A2>=F6,"GradeD","Grade F")))) [Formula]
This formula determines the corresponding grade of marks mentioned in cell A2. (Refer Table 2b)
Formula returns "Grade F", which corresponds to 36 Marks in cell A2.
This is an alternate to the preceding formula. Note the linkage to cells F3 to F6.
Using IF function with Excel Logical functions
Excel recognises the Boolean values True and False, and uses Boolean Logic in its logical operations such as the AND(), OR(), NOT()
functions .... for example, the output of AND function is TRUE only if all of the inputs are TRUE.
Table 3a
AND Function
=IF(AND(A5>=F5,A5<F4),"Grade C", "Other Grade") [Formula]
This formula determines if the corresponding grade, of marks mentioned in cell A5, is "Grade C" or "Other Grade". (Refer Table 3a)
Formula returns "Other Grade", because marks in cell A5 are 77 which do not correspond to the Grade C range of >=55 AND less than
70.
The AND() function returns TRUE only if all its arguments are TRUE; returns FALSE if one or more argument is FALSE.
Table 3b
OR Function
=IF(OR(A2>80,A3>80,A4>80,A5>80,A6>80),"Atleast One","None") [Formula]
This formula returns "Atleast One" in case minimum one cell in the range "A2:A6" contains marks > 80, else returns "None". In the
present case, cell A6 contains 88, hence the formula returns "Atleast One". (Refer Table 3b)
The OR() function returns TRUE if any argument is TRUE; returns FALSE if all arguments are FALSE.
Table 3c
NOT Function
=IF(NOT(A4<40),"Passed","Failed") [Formula]
This formula returns "Passed" in case the value in cell A4 is NOT less than 40 (ie. reverses the argument "A4<40"), else returns
"Passed". In the present case, cell A4 contains 65, hence the formula returns "Passed". (Refer Table 3c)
The NOT() function reverses the value of its argument. Use NOT when you want to make sure a value is not equal to one particular
value.
Alternatives to IF Function and Getting Around its Nesting Limit
Table 4
Using LOOKUP function in place of IF function
=LOOKUP(A2,{0,40,55,70,85},{"Grade F","Grade D","Grade C","Grade B","Grade A"}) [Formula]
This formula determines the grade of marks mentioned in cell A2. (Refer Table 4)
Formula returns "Grade F", which corresponds to 36 Marks in cell A2.
In this formula, the LOOKUP function is used instead of the IF function. For a larger number of conditions to test you may find this
easier to read and maintain, besides getting around the nesting limit of IF Function.
Using Boolean Logic in place of IF function
A Boolean value is one that can be expressed in only one of two values, as either TRUE or as FALSE. A nonnumeric (BOOLEAN) value is
coerced into a numeric value by Excel, by using arithmentic operations. TRUE will become 1 and FALSE will become 0 when used in
multiplication, addition, … (TRUE + 2 = 3, whereas FALSE + 2 = 2).
=IF(A10="Pear" ,15,(IF(A10="Orange" ,25,(IF(A10="Apple" ,35,0))))) is a nested IF function. This formula will return the value 25 if
the cell A10 mentions "Orange". This can be replaced by Boolean Logic, as follows:
=(A10="Pear" )*15+(A10="Orange" )*25+(A10="Apple" )*35. Explanation: Explanation: =(A10="Pear" ) part of the formula returns
"FALSE" which evaluates to 0; =(A10="Orange" ) returns "TRUE" which evaluates to 1; =(A10="Apple" ) returns "FALSE" which
evaluates to 0.
Breaking the formula will look like: 0*15 + 1*25 + 0*35 = 25.
It may be noted that the comparison (A10="Orange") is not case sensitive. It will evaluate "Orange" the same as "orange", or
"ORANge" …. To make this casesensitive, use =EXACT(A10,"Orange"). In this case, the formula will get changed to:
=EXACT(A10,"Pear")*15 + EXACT(A10,"Orange")*25 + EXACT(A10,"Apple")*35
Using these formula(s) will also get you around the nesting limit of IF function.
Relating IF Function with Excel Information Functions viz. IFERROR, ISERROR, ISBLANK, ISNUMBER,
ISTEXT, CELL, ….
Excel Information functions give information about the type of value or data in a cell, viz. whether the data is a string or a number, if the cell
is empty, the formatting applied to the cell, and so on.
ISERROR function visàvis ISERROR
Table 5a
Closely related to the IF() function is the IFERROR() function. Use the IFERROR function to trap and handle errors in a formula.
IFERROR(value,value_if_error): the function returns a value you specify if a formula evaluates to an error; otherwise, returns the result
of the formula. The following error types are evaluated/covered: #N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, or #NULL!.
Example: =IFERROR(1/F7,0). In this case dividing 1 by value in cell F7 (ie. 1/0) will return a #DIV/0! Error. Using IFERROR, the
value returned is 0. (Refer Table 5a)
Table 5b
You can also use the ISERROR formula in combination with IF Function, to trap errors.
Example: =IF(ISERROR(1/F7),0,(1/F7)). In this formula, IF dividing 1 by value in cell F7 (ie. 1/0) evaluates to an error (#DIV/0!)
the IF function returns the value 0, else it returns the result of the division. (Refer Table 5b)
Table 5c
It may be noted that using the formula "=IF(F7=0,0,(1/F7))" may be more efficient than using the ISERROR combinattion
"=IF(ISERROR(1/F7),0,(1/F7))", but you may come across instances when you might not get the chance to pretest conditions (like
"F7=0") in the IF statements as in the present case. (Refer Table 5c)
Table 6
ISBLANK function
=IF(NOT(ISBLANK(A6)),B6,0) [Formula]
This formula returns the value in cell B6 (ie. 2) if cell A6 is NOT blank {ie. reverses the argument "ISBLANK(A6)"}, else returns 0. In
the present case, cell A6 contains 88, hence the formula returns 2 (value in cell B6). {Refer Table 6}
Using IF function with Array formulas
Table 7
{=MAX(IF(MOD(A2:A6,2)<>0,A2:A6))} [Formula]
Enter =MAX(IF(MOD(A2:A6,2)<>0,A2:A6)) as an array formula: type the formula in the cell and then press CTRL+SHIFT+ENTER
instead of just ENTER. Excel will automatically display the formula enclosed in braces { }. (Refer Table 7)
The formula returns the Largest value in the range "A2:A6", taking into account the values of only those cells which have ODD
numbers. In the present case, the formula evaluates the largest value in cells with ODD numbers ie. in cells A4 & A5, and returns the
value in cell A5 which is 77.
Using this array formula with COUNT, SUM & AVERAGE functions will give similar results as the excel functions COUNTIFS, SUMIFS
& AVERAGEIF. It may be noted that some functions like COUNTIFS, SUMIFS, AVERAGEIF, … were introduced only in Excel 2007
and this array formula will be particularly useful for use in earlier versions of Excel and also with functions like MAX, MIN, ... in which
cases excel formulas like MAXIF, MINIF, ... do not exist.
Prev (/excel/index.php?option=com_content&view=article&id=88:indirectfunctionexcel&catid=78&Itemid=474)
Next (/excel/index.php?option=com_content&view=article&id=106:choosefunctioninexcel&catid=78&Itemid=474)
Home (/excel/index.php?option=com_content&view=article&id=182&Itemid=435)
Excel Functions (/excel/index.php?option=com_content&view=category&id=78&Itemid=474)
Contact (/excel/index.php?option=com_contact&view=contact&id=10&Itemid=493)
About Us (/excel/index.php?option=com_content&view=article&id=183&Itemid=491)
Testimonials (/excel/index.php?option=com_content&view=article&id=184&Itemid=492)
Website Use Policy (/excel/index.php?option=com_content&view=article&id=359&Itemid=609)
© 2016 Globaliconnect.com (http://www.globaliconnect.com/excel_new/) All Right Reserved. Back to Top