Boards: Formulas

A Formula field calculates a value for each record. Its expression can use fields from that record, variables, and functions.

Write an expression

Open a field’s menu, choose Edit field, then set Field type to Formula. Enter the expression in Expression. Put field names in braces, for example {Amount} * (1 + {VAT rate}). Field names are case-sensitive. The app checks the expression and shows Result type: number (or another type) and a preview for up to three records before you save.

The result can be a number, currency, text, date, datetime, duration, boolean, list, or empty (null). Use compatible types in an expression. A bad expression or a calculation problem appears in a cell as #ERROR: …; the field menu also shows formula errors. Fix the expression or source value to clear the error.

Use variables, LET, and linked records

Workspace variables are available in formulas. For example, VAT is 0.27, so {Amount} * (1 + VAT) adds 27%. A table variable can use a key: HourlyRate[Senior] returns the senior hourly rate. The Settings → Variables screen for managing these values is coming.

Use LET to name intermediate values: LET(net, {Amount}, net * (1 + VAT)). Bindings are evaluated in order, so a later binding can use an earlier one.

You can aggregate linked records directly. For example, SUM({Time entries}.{Hours}) totals the Hours field on linked Time entries. The full formula editor with autocomplete and inline function help is coming; for now, type the expression into Expression.

Workdays and holidays

WORKDAY(date, offset) returns a date after moving by working days. WORKDAY_DIFF(end, start) counts working days between two dates. Both use the Hungarian work calendar, including statutory holidays and known replacement workdays. The bundled calendar covers 2026 and 2027. If a year’s workday swaps are not confirmed, the result carries a warning. The workspace can supply a confirmed calendar.

Totals for formula fields

Numeric formula fields can use the table’s Summary row. Choose Summary for {field} and then Sum, Average, Min, Max, or another available calculation. Grouped rows can show Group subtotal. Errors do not contribute a numeric value to the total.

Functions

This list comes from the formula package’s function metadata.

  • Math: ROUND, CEILING, FLOOR, ABS, MOD, POWER, SQRT, MIN, MAX, AVERAGE, SUM
  • Logic: IF, IFS, SWITCH, AND, OR, NOT, ISBLANK, BLANK, ERROR
  • Text: CONCAT, LEFT, RIGHT, MID, LEN, FIND, SUBSTITUTE, UPPER, LOWER, TRIM, REGEX_MATCH, REGEX_REPLACE, FORMAT_NUMBER
  • Date: TODAY, NOW, DATE, DATEADD, DATETIME_DIFF, WEEKDAY, WEEKNUM, WORKDAY, WORKDAY_DIFF, FORMAT_DATE
  • Lists: COUNT, COUNTIF, SUMIF, UNIQUE, JOIN
  • Variables: LET
  • Currency: EXCHANGE

Imported formulas

The formula package has translators for Airtable, monday, and NocoDB syntax. They map common functions and keep the source expression when syntax cannot be translated. Unsupported functions, argument counts, date units, week rules, regular expressions, and source-specific behavior are reported for review. Do not use a formula with unresolved reports.

The current import demo excludes formula objects. It lists formulas as unsupported instead of importing them. One compatibility example: NocoDB’s MOD keeps the dividend’s sign, while SRVO’s MOD follows the divisor’s sign. A NocoDB MOD expression with negative values is flagged so you can check its result.