## Introduction

App users and application modelers can use Excel-like functions within forms to craft a diverse range of formulas. For instance, you have the flexibility to design custom sub-totals in a form with a dynamically fluctuating number of rows.

There are three ways to use Excel-like functions:

This option enables users to enter functions directly into form cells.

This option is limited to the form editor of the Modeler module. The modeler should know the definition and syntax of the function.

This option is limited to the form editor of the Modeler module. The modeler will find function descriptions, syntaxes, and examples and can write definitions.

**Tip**: Refer to the function list for all the Excel-like functions available to use in Kepion.

## Enter functions into cells

1. Select the target cell(s) and enter a function.

**Tip**: You can select and drag across cells instead of entering the cell range (e.g., D13:G13).

2. Select the **Enter **key or click off the form to run the function.

## Use *fx *bar

1. Select the target cell(s) and enter a function into the *fx *bar.

**Tip**: You can select and drag across cells instead of entering the cell range (e.g., D13:G13) in the *fx* bar.

2. Select the **Enter **key or click off the form to run the function.

## Use Insert Function menu

1. Select the target cell(s) and then * fx*.

2. Select the desired function.

3. (Optional) Enter the **Definition**.

**Tip**: You can either use the *fx* bar or enter the definition directly into cells.

4. Select **OK **to insert the function.

## Function list

Find the full list of Excel-like functions supported in Kepion below:

Function | Description | Syntax |
---|---|---|

AVERAGE | Returns the average of its arguments, which can be numbers or names, arrays, or references that contain numbers. | =AVERAGE(number1, [number2], ...) |

SUM | Returns the sum of a series of numbers and/or cells. | =SUM(number1, [number2], ...) |

AND | Returns TRUE if all of the provided arguments are logically true, and FALSE if any of the provided arguments are logically false. | =AND(logical1, [logical2], ...) |

IF | Checks whether a condition is met and returns one value if TRUE and another if FALSE. | =IF(logical_test, value_if_true, value_if_false) |

OR |
Returns TRUE if any of the provided arguments are logically true, and FALSE if all of the provided arguments are logically false. |
=OR(logical1, [logical2], ...) |

HLOOKUP | Looks for a value in the top row of a table or array of values and then returns a value in the same column from a row you specify. | =HLOOKUP(lookup_table, table_array, row_index_num, [range_lookup]) |

VLOOKUP | Looks for a value in the leftmost column of a table and then returns a value in the same row from a specified column. The table must be sorted in an ascending order. | =VLOOKUP(lookup_table, table_array, col_index_num, [range_lookup]) |

IRR | Returns the internal rate of return for a series of cash flows. | =IRR(values, [guess]) |

NPV | Returns the net present value of an investment based on a discount rate and a series of future payments and income. | =NPV(rate, value1, [value2], ...) |

ISERR | Checks whether a value is an error other than #N/A and returns TRUE or FALSE. | =ISERR(value) |

ISERROR | Checks whether a value is an error and returns TRUE or FALSE. | =ISERROR(value) |

ISNA | Checks whether a value is #N/A and returns TRUE or FALSE. | =ISNA(value) |

ISNUMBER | Checks whether a value is a number and returns TRUE or FALSE. | =ISNUMBER(value) |