IFS Function

Excel 2019+, Microsoft 365

Summary

The IFS function evaluates multiple conditions in sequence and returns the value associated with the first TRUE condition. It provides a cleaner alternative to deeply nested IF statements for complex decision-making logic.

Syntax

IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2], [logical_test3, value_if_true3], …)

Parameters

Parameter Type Required Description
logical_test1 Logical Yes Required first condition that returns TRUE or FALSE
value_if_true1 Any Yes Required value returned when logical_test1 is TRUE
logical_test2...127 Logical No Optional additional conditions (up to 127 total)
value_if_true2...127 Any No Optional values corresponding to each condition

Using the IFS Function

Use IFS when you need to test multiple conditions without the complexity of nested IF functions. The function stops at the first TRUE condition, making it ideal for grading systems, categorization, and multi-level decision trees.

Common IFS Examples

Grade Assignment

=IFS(A2>=90,"A",A2>=80,"B",A2>=70,"C",A2>=60,"D",TRUE,"F")

Assigns letter grades based on numeric scores, using TRUE as default condition for F grade.

Weekday Lookup

=IFS(B2=1,$D$2,B2=2,$D$3,B2=3,$D$4,B2=4,$D$5,B2=5,$D$6,B2=6,$D$7,B2=7,$D$8)

Returns day name from lookup table based on weekday number (1=Sunday).

Frequently Asked Questions

IFS returns #N/A error. Use TRUE as the final logical_test with your default value to prevent this.

No. Each logical_test must have a corresponding value_if_true, or you'll get a 'too few arguments' error.

Up to 127 condition-value pairs (254 total arguments).

Common Errors and Solutions

#N/A Error

Cause: No conditions evaluate to TRUE

Solution: Add TRUE as final logical_test with default value

#VALUE! Error

Cause: logical_test doesn't return TRUE/FALSE

Solution: Ensure conditions use comparison operators (=,>,>,<,etc.)

Too few arguments

Cause: logical_test without matching value_if_true

Solution: Pair every condition with a return value

Notes

  • Always use TRUE with default value as final condition to avoid #N/A
  • Conditions evaluated left-to-right, stops at first TRUE
  • Can return empty string "" as value_if_true
  • Ideal for replacing CHOOSE with dynamic conditions

Compatibility

Available in: Excel 2019, Excel 2021, Microsoft 365

Not available in: Excel 2016 and earlier, Excel 2013, Excel 2010, Excel 2007, Excel 2003

Content last reviewed: December 9, 2025
Update frequency: As needed
Excel versions tested: Excel 2019+, Microsoft 365