Logical Excel Functions

Make decisions and test conditions

Decision formulas

  • Single test → [IF](/functions/if/)
  • Many branches → [IFS](/functions/ifs/) or [SWITCH](/functions/switch/)
  • Combine tests → [AND](/functions/and/) and [OR](/functions/or/) inside IF
  • Compare → [IF vs IFS](/compare/if-vs-ifs/)

Functions in this category

  • IF: Returns one value if a condition is TRUE and another value if it's FALSE.
  • IFS: Checks multiple conditions and returns a value corresponding to the first TRUE condition.
  • SWITCH: Evaluates an expression against a list of values and returns the result corresponding to the first matching value.
  • AND: Returns TRUE if all arguments are TRUE; returns FALSE if any argument is FALSE.
  • OR: Returns TRUE if any argument is TRUE; returns FALSE only if all arguments are FALSE.
  • NOT: Reverses the logic of its argument. Returns FALSE if argument is TRUE, and TRUE if argument is FALSE.
  • IFERROR: Returns a specified value if a formula evaluates to an error; otherwise, returns the result of the formula.
  • TRUE: Returns the logical value TRUE.
  • FALSE: Returns the logical value FALSE.
  • XOR: Returns TRUE if an odd number of arguments are TRUE (exclusive OR).
  • IFNA: Returns a value you specify if a formula returns #N/A; otherwise returns the formula result.
  • LET: Assigns names to calculation results, allowing you to store intermediate calculations and reuse them.
  • LAMBDA: Creates custom, reusable functions that can be called by a friendly name.
  • MAP: Returns an array formed by mapping each value in the array(s) to a new value using a LAMBDA.
  • REDUCE: Reduces an array to an accumulated value by applying a LAMBDA to each value.
  • SCAN: Scans an array by applying a LAMBDA to each value and returns an array of intermediate values.
  • BYROW: Applies a LAMBDA to each row and returns an array of results.
  • BYCOL: Applies a LAMBDA to each column and returns an array of results.
  • MAKEARRAY: Returns a calculated array of specified row and column size by applying a LAMBDA.