Contents

# Logical Functions

This category contains the Logical functions.

### Handling non-logical arguments in logical functions

- Zero (0) is equivalent to FALSE and all other numbers are equivalent to TRUE.

- Empty cells and text in cells are ignored.

- A #VALUE error is raised if all arguments are ignored.

- A #VALUE error is raised if one argument is direct text (not text in a cell).

- Errors as argument lead to an error.

To access this command...

Insert - Function - Category Logical

### ISNA

Returns TRUE if a cell contains the #N/A (value not available) error value.

If an error occurs, the function returns FALSE.

#### Syntax

ISNA(Value)

Value is the value or expression to be tested.

#### Example

=ISNA(D3) returns FALSE as a result.

### IFERROR

Returns the value if the cell does not contain an error value, or the alternative value if it does.

This function is available since LibreOfficeDev 4.0.

#### Syntax

IFERROR(Value; Alternate_value)

Value is the value or expression to be returned if it is not equal or results in an error.

Alternate_value is the value or expression to be returned if the expression or value of Value is equal or results in an error.

#### Example

=IFERROR(C8;C9) where cell C8 contains =1/0 returns the value of C9, because 1/0 is an error.

=IFERROR(C8;C9) where cell C8 contains 13 returns 13, the value of C8, which is not an error.

## IFS

IFS is a multiple IF-function.

## SWITCH

SWITCH compares expression with value1 to valuen and returns the result belonging to the first value that equals expression. If there is no match and default_result is given, that will be returned.

## AND

Returns TRUE if all arguments are TRUE. If one of the elements is FALSE, this function returns the FALSE value.

The arguments are either logical expressions themselves (TRUE, 1<5, 2+3=7, B8<10) that return logical values, or arrays (A1:C3) containing logical values.

#### Syntax

AND(Logical 1 [; Logical 2 [; … [; Logical 255]]])

Logical 1; Logical 2; … ; Logical 255 are boolean values, references to cells or to cell ranges of logical values.

This function ignores any text or empty cell within a data range. If you suspect wrong results from this function, look for text in the data ranges. To highlight text contents in a data range, use the value highlighting feature.

#### Example

The logical values of entries 12<13; 14>12, and 7<6 are to be checked:

=AND(12<13;14>12;7<6) returns FALSE.

=AND(FALSE();TRUE()) returns FALSE.

The array formula {=AND(B1:B10;C1:C10)} yields a one-dimensional value of TRUE when all components of B1:B10 and C1:C10 are TRUE. The array expression above does not produce the logical AND per element, and thus does not produce an array of logical values. To compute a logical AND of arrays per element use the * operator in array context. In the example, enter {=B1:B10*C1:C10}.

## FALSE

Returns the logical value FALSE. The FALSE() function does not require any arguments, and always returns the logical value FALSE.

#### Syntax

FALSE()

#### Example

=FALSE() returns FALSE

=NOT(FALSE()) returns TRUE

## IF

Specifies a logical test to be performed.

#### Syntax

IF(Test [; [ThenValue] [; [OtherwiseValue]]])

Test is any value or expression that can be TRUE or FALSE.

ThenValue (optional) is the value that is returned if the logical test is TRUE.

OtherwiseValue (optional) is the value that is returned if the logical test is FALSE.

In the LibreOfficeDev Calc functions, parameters marked as "optional" can be left out only when no parameter follows. For example, in a function with four parameters, where the last two parameters are marked as "optional", you can leave out parameter 4 or parameters 3 and 4, but you cannot leave out parameter 3 alone.

#### Example

=IF(A1>5;100;"too small") If the value in A1 is greater than 5, the value 100 is returned; otherwise, the text too small is returned.

=IF(A1>5;;"too small") If the value in A1 is greater than 5, the value 0 is returned because empty parameters are considered to be 0; otherwise, the text too small is returned.

=IF(A1>5;100;) If the value in A1 is less than 5, the value 0 is returned because the empty OtherwiseValue is interpreted as 0; otherwise 100 is returned.

## NOT

Complements (inverts) a logical value.

#### Syntax

NOT(LogicalValue)

LogicalValue is any value to be complemented.

#### Example

=NOT(A). If A=TRUE then NOT(A) will evaluate FALSE.

## OR

Returns TRUE if at least one argument is TRUE. This function returns the value FALSE, if all the arguments have the logical value FALSE.

The arguments are either logical expressions themselves (TRUE, 1<5, 2+3=7, B8<10) that return logical values, or arrays (A1:C3) containing logical values.

#### Syntax

OR(Logical 1 [; Logical 2 [; … [; Logical 255]]])

Logical 1; Logical 2; … ; Logical 255 are boolean values, references to cells or to cell ranges of logical values.

This function ignores any text or empty cell within a data range. If you suspect wrong results from this function, look for text in the data ranges. To highlight text contents in a data range, use the value highlighting feature.

#### Example

The logical values of entries 12<11; 13>22, and 45=45 are to be checked.

=OR(12<11;13>22;45=45) returns TRUE.

=OR(FALSE();TRUE()) returns TRUE.

The array formula {=OR(B1:B10;C1:C10)} yields a one-dimensional value of FALSE when all components of B1:B10 and C1:C10 are FALSE. The array expression above does not produce the logical OR per element, and thus does not produce an array of logical values. To compute a logical OR of arrays per element use the + operator in array context. In the example, enter {=B1:B10+C1:C10}.

## TRUE

The logical value is set to TRUE. The TRUE() function does not require any arguments, and always returns the logical value TRUE.

#### Syntax

TRUE()

#### Example

If A=TRUE and B=FALSE the following examples appear:

=AND(A;B) returns FALSE

=OR(A;B) returns TRUE

=NOT(AND(A;B)) returns TRUE

## XOR

Returns true if an odd number of arguments evaluates to TRUE.

The arguments are either logical expressions themselves (TRUE, 1<5, 2+3=7, B8<10) that return logical values, or arrays (A1:C3) containing logical values.

This function is available since LibreOfficeDev 4.0.

#### Syntax

XOR(Logical 1 [; Logical 2 [; … [; Logical 255]]])

Logical 1; Logical 2; … ; Logical 255 are boolean values, references to cells or to cell ranges of logical values.

#### Example

=XOR(TRUE();TRUE()) returns FALSE

=XOR(TRUE();TRUE();TRUE()) returns TRUE

=XOR(FALSE();TRUE()) returns TRUE

Related Topics

Functions by Category