MeadInKent
| Feedback | ISNA errors | Graphs |
Excel 2010

Excel Functions: If, And, Or, Rank and IsError

The IF function allows you to select one of two alternative values which are dependent upon a specified condition. It is in the format: =IF(Condition, Value if True, Value if False). If the condition is true then the first value is returned, otherwise the second is used.

Formulas used in the example
IF(C3 = "Y", B3 * 0.175, 0) If cell C3 contains the character "Y", then return a value of B3 x 0.175. Otherwise return a value of zero. This could be used if an item may or may not require VAT to be paid
IF(C5 = D5, "OK", "Warning: Does not balance") If cell C5 is equal to D5 then return "OK". Otherwise return a warning message. This is a useful method of informing the user that calculations have been reconciled and appear to be correct (e.g. cross-casting to ensure that the sum of all of the rows equals the sum of the columns).
IF(C6>0, B6/C6, 0) If the value in cell C6 is greater than zero, return the value of B6 divided by C6, otherwise return 0. This is a very useful method of preventing the #DIV/0! error message.

IF() only offers two outcomes but this can be increased if further IF's are embedded in either the true or false declarations e.g. =IF(A1>B1, IF(B1>0, "A", "B"), "C").

- H I J K L M N
1 Test Results      www.meadinkent.co.uk
2              
3 Name Test 1 Test 2        
4 Jenny 3 10   Pass Pass
5 Kathy 9 9   Good Good
6 Mary 7 6   Fail
7 Susan 8 10   Good Good

You can also use the logical functions AND() and OR() to increase the complexity of a formula. They usually need to be incorporated within an IF function and allow many criteria to be specified and return either a true or false value.

AND() and OR() both require you to provide a list of statements, each one separated by a comma. If all of the AND() statements are correct it will return a True value. If any of the OR() statements are correct it will return a True value. It could take the form: =IF(AND(statement1, statement2, statement 3), ValueIfTrue, ValueIfFalse).


Formulas used in the example
 [L4] =IF(AND(I4>=8, J4>=8, I4+J4>=17), "Good", "") Good if both scores are greater than or equal to 8 and the total is 17 or more
 [M4] =IF(AND(I4+J4>12, OR(I4>=8, J4>=8), L4<>"Good"), "Pass","") Pass if the total is more than 12, at least one of the scores is 8 and 'Good' has not been awarded
 [N4] =IF(L4&M4="", "Fail", L4&M4) Fail if not awarded a 'Good' or 'Pass'

Note that often the SUMPRODUCT() function can be adapted to be a more flexible alternative to using combinations of IF and AND.

ISERROR() will return a True value if its argument results in an error. Otherwise it will return a False value. It takes the format: = ISERROR(range). Excel can generate various errors if you try to perform invalid tasks such as dividing by zero. If you include a cell containing an error within a range used by another function a further error will result. Note that some specific error codes such as #N/A can be recognised by other specialist logical functions such as ISNA().

RANK() is a simple function which tells you the position of one number within a sequence of numbers. It takes the format: = RANK(value, series, AorD). The value normally represents a cell reference containing a number. The series can represent a range of cells containing a collection of numbers. The AorD argument instructs the function whether to calculate the ranking in Ascending or Descending order. If AorD is set to zero or omitted, the order will be descending. Anything other than zero will result in an ascending order.

Formulas used in the example
 [D4] =C4 / B4  On row 5 this results in an error caused by dividing by zero
 [E4] =IF(B4<>0, C4 / B4, 0)  If the cell in column B does not equal zero, perform the calculation. Otherwise return a value of zero
 [F4] =RANK(E4, $E$4:$E$7)  The value in cell F4 is the third lowest in the range E4:E7
 [D9] =IF(ISERROR( SUM(D4:D7)), "Yes","No")  If the value returned by the SUM is an error, return Yes. If not, return No

- A B C D E F
1 Out Patient visits per In Patient episode    
2            
3 Doctor In Pat Out Pat OP/IP* OP/IP** Rank
4 Dr Smith 32 61 1.91 1.91 3
5 Dr Lam 0 42 #DIV/0! 0.00 4
6 Mrs Dapper 14 43 3.07 3.07 1
7 Prof. Plum 53 123 2.32 2.32 2
8            
9 Any errors detected in column? Yes No  

In the example, the IF function in column E provides a safer alternative to the simple formula in column D and prevents the division error from occurring. The ranking formula in column F used an absolute reference indicated by the dollar sign ($). This fixed the range of rows as being 4 to 7 when the formula was copied to cells below.

excel Get this information as a document
accompanied by Excel worksheets
Document is in PDF format Click here for details about obtaining this
file. It has been rewritten for Excel 2010.

file: xlifrankerrors.htm Page last updated Jan14 MeadInKent.co.uk 2015 CMIDX S2 P3 Y