Functions¶
Spreadsheet functions are divided in the following categories:
Note
Formulas containing functions that are not compatible with Excel are replaced by their evaluated result when exporting a spreadsheet.
Array¶
Name and arguments |
Description or link |
---|---|
ARRAY.CONSTRAIN(input_range, rows, columns) |
Returns a result array constrained to a specific width and height (not compatible with Excel) |
CHOOSECOLS(array, col_num, [col_num2, …]) |
|
CHOOSEROWS(array, row_num, [row_num2, …]) |
|
EXPAND(array, rows, [columns], [pad_with]) |
|
FLATTEN(range, [range2, …]) |
Flattens all the values from one or more ranges into a single column (not compatible with Excel) |
FREQUENCY(data, classes) |
|
HSTACK(range1, [range2, …]) |
|
MDETERM(square_matrix) |
|
MINVERSE(square_matrix) |
|
MMULT(matrix1, matrix2) |
|
SUMPRODUCT(range1, [range2, …]) |
|
SUMX2MY2(array_x, array_y) |
|
SUMX2PY2(array_x, array_y) |
|
SUMXMY2(array_x, array_y) |
|
TOCOL(array, [ignore], [scan_by_column]) |
|
TOROW(array, [ignore], [scan_by_column]) |
|
TRANSPOSE(range) |
|
VSTACK(range1, [range2, …]) |
|
WRAPCOLS(range, wrap_count, [pad_with]) |
|
WRAPROWS(range, wrap_count, [pad_with]) |
Database¶
Name and arguments |
Description or link |
---|---|
DAVERAGE(database, field, criteria) |
|
DCOUNT(database, field, criteria) |
|
DCOUNTA(database, field, criteria) |
|
DGET(database, field, criteria) |
|
DMAX(database, field, criteria) |
|
DMIN(database, field, criteria) |
|
DPRODUCT(database, field, criteria) |
|
DSTDEV(database, field, criteria) |
|
DSTDEVP(database, field, criteria) |
|
DSUM(database, field, criteria) |
|
DVAR(database, field, criteria) |
|
DVARP(database, field, criteria) |
Date¶
Name and arguments |
Description or link |
---|---|
DATE(year, month, day) |
|
DATEDIF(start_date, end_date, unit) |
|
DATEVALUE(date_string) |
|
DAY(date) |
|
DAYS(end_date, start_date) |
|
DAYS360(start_date, end_date, [method]) |
|
EDATE(start_date, months) |
|
EOMONTH(start_date, months) |
|
HOUR(time) |
|
ISOWEEKNUM(date) |
|
MINUTE(time) |
|
MONTH(date) |
|
NETWORKDAYS(start_date, end_date, [holidays]) |
|
NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays]) |
|
NOW() |
|
SECOND(time) |
|
TIME(hour, minute, second) |
|
TIMEVALUE(time_string) |
|
TODAY() |
|
WEEKDAY(date, [type]) |
|
WEEKNUM(date, [type]) |
|
WORKDAY(start_date, num_days, [holidays]) |
|
WORKDAY.INTL(start_date, num_days, [weekend], [holidays]) |
|
YEAR(date) |
|
YEARFRAC(start_date, end_date, [day_count_convention]) |
Exact number of years between two dates (not compatible with Excel) |
MONTH.START(date) |
First day of the month preceding a date (not compatible with Excel) |
MONTH.END(date) |
Last day of the month following a date (not compatible with Excel) |
QUARTER(date) |
Quarter of the year a specific date falls in (not compatible with Excel) |
QUARTER.START(date) |
First day of the quarter of the year a specific date falls in (not compatible with Excel) |
QUARTER.END(date) |
Last day of the quarter of the year a specific date falls in (not compatible with Excel) |
YEAR.START(date) |
First day of the year a specific date falls in (not compatible with Excel) |
YEAR.END(date) |
Last day of the year a specific date falls in (not compatible with Excel) |
Engineering¶
Name and arguments |
Description or link |
---|---|
DELTA(number1, [number2]) |
Filter¶
Name and arguments |
Description or link |
---|---|
FILTER(range, condition1, [condition2, …]) |
|
UNIQUE(range, [by_column], [exactly_once]) |
Financial¶
Name and arguments |
Description or link |
---|---|
ACCRINTM(issue, maturity, rate, redemption, [day_count_convention]) |
|
AMORLINC(cost, purchase_date, first_period_end, salvage, period, rate, [day_count_convention]) |
|
COUPDAYS(settlement, maturity, frequency, [day_count_convention]) |
|
COUPDAYBS(settlement, maturity, frequency, [day_count_convention]) |
|
COUPDAYSNC(settlement, maturity, frequency, [day_count_convention]) |
|
COUPNCD(settlement, maturity, frequency, [day_count_convention]) |
|
COUPNUM(settlement, maturity, frequency, [day_count_convention]) |
|
COUPPCD(settlement, maturity, frequency, [day_count_convention]) |
|
CUMIPMT(rate, number_of_periods, present_value, first_period, last_period, [end_or_beginning]) |
|
CUMPRINC(rate, number_of_periods, present_value, first_period, last_period, [end_or_beginning]) |
|
DB(cost, salvage, life, period, [month]) |
|
DDB(cost, salvage, life, period, [factor]) |
|
DISC(settlement, maturity, price, redemption, [day_count_convention]) |
|
DOLLARDE(fractional_price, unit) |
|
DOLLARFR(decimal_price, unit) |
|
DURATION(settlement, maturity, rate, yield, frequency, [day_count_convention]) |
|
EFFECT(nominal_rate, periods_per_year) |
|
FV(rate, number_of_periods, payment_amount, [present_value], [end_or_beginning]) |
|
FVSCHEDULE(principal, rate_schedule) |
|
INTRATE(settlement, maturity, investment, redemption, [day_count_convention]) |
|
IPMT(rate, period, number_of_periods, present_value, [future_value], [end_or_beginning]) |
|
IRR(cashflow_amounts, [rate_guess]) |
|
ISPMT(rate, period, number_of_periods, present_value) |
|
MDURATION(settlement, maturity, rate, yield, frequency, [day_count_convention]) |
|
MIRR(cashflow_amounts, financing_rate, reinvestment_return_rate) |
|
NOMINAL(effective_rate, periods_per_year) |
|
NPER(rate, payment_amount, present_value, [future_value], [end_or_beginning]) |
|
NPV(discount, cashflow1, [cashflow2, …]) |
|
PDURATION(rate, present_value, future_value) |
|
PMT(rate, number_of_periods, present_value, [future_value], [end_or_beginning]) |
|
PPMT(rate, period, number_of_periods, present_value, [future_value], [end_or_beginning]) |
|
PV(rate, number_of_periods, payment_amount, [future_value], [end_or_beginning]) |
|
PRICE(settlement, maturity, rate, yield, redemption, frequency, [day_count_convention]) |
|
PRICEDISC(settlement, maturity, discount, redemption, [day_count_convention]) |
|
PRICEMAT(settlement, maturity, issue, rate, yield, [day_count_convention]) |
|
RATE(number_of_periods, payment_per_period, present_value, [future_value], [end_or_beginning], [rate_guess]) |
|
RECEIVED(settlement, maturity, investment, discount, [day_count_convention]) |
|
RRI(number_of_periods, present_value, future_value) |
|
SLN(cost, salvage, life) |
|
SYD(cost, salvage, life, period) |
|
TBILLPRICE(settlement, maturity, discount) |
|
TBILLEQ(settlement, maturity, discount) |
|
TBILLYIELD(settlement, maturity, price) |
|
VDB(cost, salvage, life, start, end, [factor], [no_switch]) |
|
XIRR(cashflow_amounts, cashflow_dates, [rate_guess]) |
|
XNPV(discount, cashflow_amounts, cashflow_dates) |
|
YIELD(settlement, maturity, rate, price, redemption, frequency, [day_count_convention]) |
|
YIELDDISC(settlement, maturity, price, redemption, [day_count_convention]) |
|
YIELDMAT(settlement, maturity, issue, rate, price, [day_count_convention]) |
Info¶
Name and arguments |
Description or link |
---|---|
CELL(info_type, reference) |
|
ISERR(value) |
|
ISERROR(value) |
|
ISLOGICAL(value) |
|
ISNA(value) |
|
ISNONTEXT(value) |
|
ISNUMBER(value) |
|
ISTEXT(value) |
|
ISBLANK(value) |
|
NA() |
Logical¶
Name and arguments |
Description or link |
---|---|
AND(logical_expression1, [logical_expression2, …]) |
|
FALSE() |
|
IF(logical_expression, value_if_true, [value_if_false]) |
|
IFERROR(value, [value_if_error]) |
|
IFNA(value, [value_if_error]) |
|
IFS(condition1, value1, [condition2, …], [value2, …]) |
|
NOT(logical_expression) |
|
OR(logical_expression1, [logical_expression2, …]) |
|
TRUE() |
|
XOR(logical_expression1, [logical_expression2, …]) |
Lookup¶
Name and arguments |
Description or link |
---|---|
ADDRESS(row, column, [absolute_relative_mode], [use_a1_notation], [sheet]) |
|
COLUMN([cell_reference]) |
|
COLUMNS(range) |
|
HLOOKUP(search_key, range, index, [is_sorted]) |
|
INDEX(reference, row, column) |
|
INDIRECT(reference, [use_a1_notation]) |
|
LOOKUP(search_key, search_array, [result_range]) |
|
MATCH(search_key, range, [search_type]) |
|
PIVOT(pivot_id, measure_name, [domain_field_name, …], [domain_value, …]) |
Get the value from a pivot (not compatible with Excel) |
PIVOT.HEADER(pivot_id, [domain_field_name, …], [domain_value, …]) |
Get the header of a pivot (not compatible with Excel) |
PIVOT.TABLE(pivot_id, [row_count], [include_total], [include_column_titles]) |
Get a pivot table (not compatible with Excel) |
ROW([cell_reference]) |
|
ROWS(range) |
|
VLOOKUP(search_key, range, index, [is_sorted]) |
|
XLOOKUP(search_key, lookup_range, return_range, [if_not_found], [match_mode], [search_mode]) |
Math¶
Name and arguments |
Description or link |
---|---|
ABS(value) |
|
ACOS(value) |
|
ACOSH(value) |
|
ACOT(value) |
|
ACOTH(value) |
|
ASIN(value) |
|
ASINH(value) |
|
ATAN(value) |
|
ATAN2(x, y) |
|
ATANH(value) |
|
CEILING(value, [factor]) |
|
CEILING.MATH(number, [significance], [mode]) |
|
CEILING.PRECISE(number, [significance]) |
|
COS(angle) |
|
COSH(value) |
|
COT(angle) |
|
COTH(value) |
|
COUNTBLANK(value1, [value2, …]) |
|
COUNTIF(range, criterion) |
|
COUNTIFS(criteria_range1, criterion1, [criteria_range2, …], [criterion2, …]) |
|
COUNTUNIQUE(value1, [value2, …]) |
Counts number of unique values in a range (not compatible with Excel) |
COUNTUNIQUEIFS(range, criteria_range1, criterion1, [criteria_range2, …], [criterion2, …]) |
Counts number of unique values in a range, filtered by a set of criteria (not compatible with Excel) |
CSC(angle) |
|
CSCH(value) |
|
DECIMAL(value, base) |
|
DEGREES(angle) |
|
EXP(value) |
|
FLOOR(value, [factor]) |
|
FLOOR.MATH(number, [significance], [mode]) |
|
FLOOR.PRECISE(number, [significance]) |
|
INT(value) |
|
ISEVEN(value) |
|
ISO.CEILING(number, [significance]) |
|
ISODD(value) |
|
LN(value) |
|
MOD(dividend, divisor) |
|
MUNIT(dimension) |
|
ODD(value) |
|
PI() |
|
POWER(base, exponent) |
|
PRODUCT(factor1, [factor2, …]) |
|
RAND() |
|
RANDARRAY([rows], [columns], [min], [max], [whole_number]) |
|
RANDBETWEEN(low, high) |
|
ROUND(value, [places]) |
|
ROUNDDOWN(value, [places]) |
|
ROUNDUP(value, [places]) |
|
SEC(angle) |
|
SECH(value) |
|
SIN(angle) |
|
SINH(value) |
|
SQRT(value) |
|
SUM(value1, [value2, …]) |
|
SUMIF(criteria_range, criterion, [sum_range]) |
|
SUMIFS(sum_range, criteria_range1, criterion1, [criteria_range2, …], [criterion2, …]) |
|
TAN(angle) |
|
TANH(value) |
|
TRUNC(value, [places]) |
Misc¶
Name and arguments |
Description or link |
---|---|
FORMAT.LARGE.NUMBER(value, [unit]) |
Apply a large number format (not compatible with Excel) |
Odoo¶
Name and arguments |
Description or link |
---|---|
ODOO.CREDIT(account_codes, date_range, [offset], [company_id], [include_unposted]) |
Get the total credit for the specified account(s) and period (not compatible with Excel) |
ODOO.DEBIT(account_codes, date_range, [offset], [company_id], [include_unposted]) |
Get the total debit for the specified account(s) and period (not compatible with Excel) |
ODOO.BALANCE(account_codes, date_range, [offset], [company_id], [include_unposted]) |
Get the total balance for the specified account(s) and period (not compatible with Excel) |
ODOO.FISCALYEAR.START(day, [company_id]) |
Returns the starting date of the fiscal year encompassing the provided date (not compatible with Excel) |
ODOO.FISCALYEAR.END(day, [company_id]) |
Returns the ending date of the fiscal year encompassing the provided date (not compatible with Excel) |
ODOO.ACCOUNT.GROUP(type) |
Returns the account ids of a given group (not compatible with Excel) |
ODOO.CURRENCY.RATE(currency_from, currency_to, [date]) |
This function takes in two currency codes as arguments, and returns the exchange rate from the first currency to the second as float (not compatible with Excel) |
ODOO.LIST(list_id, index, field_name) |
Get the value from a list (not compatible with Excel) |
ODOO.LIST.HEADER(list_id, field_name) |
Get the header of a list (not compatible with Excel) |
ODOO.FILTER.VALUE(filter_name) |
Return the current value of a spreadsheet filter (not compatible with Excel) |
Operators¶
Name and arguments |
Description or link |
---|---|
ADD(value1, value2) |
Sum of two numbers (not compatible with Excel) |
CONCAT(value1, value2) |
|
DIVIDE(dividend, divisor) |
One number divided by another (not compatible with Excel) |
EQ(value1, value2) |
Equal (not compatible with Excel) |
GT(value1, value2) |
Strictly greater than (not compatible with Excel) |
GTE(value1, value2) |
Greater than or equal to (not compatible with Excel) |
LT(value1, value2) |
Less than (not compatible with Excel) |
LTE(value1, value2) |
Less than or equal to (not compatible with Excel) |
MINUS(value1, value2) |
Difference of two numbers (not compatible with Excel) |
MULTIPLY(factor1, factor2) |
Product of two numbers (not compatible with Excel) |
NE(value1, value2) |
Not equal (not compatible with Excel) |
POW(base, exponent) |
A number raised to a power (not compatible with Excel) |
UMINUS(value) |
A number with the sign reversed (not compatible with Excel) |
UNARY.PERCENT(percentage) |
Value interpreted as a percentage (not compatible with Excel) |
UPLUS(value) |
A specified number, unchanged (not compatible with Excel) |
Statistical¶
Name and arguments |
Description or link |
---|---|
AVEDEV(value1, [value2, …]) |
|
AVERAGE(value1, [value2, …]) |
|
AVERAGE.WEIGHTED(values, weights, [additional_values, …], [additional_weights, …]) |
Weighted average (not compatible with Excel) |
AVERAGEA(value1, [value2, …]) |
|
AVERAGEIF(criteria_range, criterion, [average_range]) |
|
AVERAGEIFS(average_range, criteria_range1, criterion1, [criteria_range2, …], [criterion2, …]) |
|
CORREL(data_y, data_x) |
|
COUNT(value1, [value2, …]) |
|
COUNTA(value1, [value2, …]) |
|
COVAR(data_y, data_x) |
|
COVARIANCE.P(data_y, data_x) |
|
COVARIANCE.S(data_y, data_x) |
|
FORECAST(x, data_y, data_x) |
|
GROWTH(known_data_y, [known_data_x], [new_data_x], [b]) |
Fits points to exponential growth trend (not compatible with Excel) |
INTERCEPT(data_y, data_x) |
|
LARGE(data, n) |
|
LINEST(data_y, [data_x], [calculate_b], [verbose]) |
|
LOGEST(data_y, [data_x], [calculate_b], [verbose]) |
|
MATTHEWS(data_x, data_y) |
Compute the Matthews correlation coefficient of a dataset (not compatible with Excel) |
MAX(value1, [value2, …]) |
|
MAXA(value1, [value2, …]) |
|
MAXIFS(range, criteria_range1, criterion1, [criteria_range2, …], [criterion2, …]) |
|
MEDIAN(value1, [value2, …]) |
|
MIN(value1, [value2, …]) |
|
MINA(value1, [value2, …]) |
|
MINIFS(range, criteria_range1, criterion1, [criteria_range2, …], [criterion2, …]) |
|
PEARSON(data_y, data_x) |
|
PERCENTILE(data, percentile) |
|
PERCENTILE.EXC(data, percentile) |
|
PERCENTILE.INC(data, percentile) |
|
POLYFIT.COEFFS(data_y, data_x, order, [intercept]) |
Compute the coefficients of polynomial regression of the dataset (not compatible with Excel) |
POLYFIT.FORECAST(x, data_y, data_x, order, [intercept]) |
Predict value by computing a polynomial regression of the dataset (not compatible with Excel) |
QUARTILE(data, quartile_number) |
|
QUARTILE.EXC(data, quartile_number) |
|
QUARTILE.INC(data, quartile_number) |
|
RANK(value, data, [is_ascending]) |
|
RSQ(data_y, data_x) |
|
SMALL(data, n) |
|
SLOPE(data_y, data_x) |
|
SPEARMAN(data_y, data_x) |
Compute the Spearman rank correlation coefficient of a dataset (not compatible with Excel) |
STDEV(value1, [value2, …]) |
|
STDEV.P(value1, [value2, …]) |
|
STDEV.S(value1, [value2, …]) |
|
STDEVA(value1, [value2, …]) |
|
STDEVP(value1, [value2, …]) |
|
STDEVPA(value1, [value2, …]) |
|
STEYX(data_y, data_x) |
|
TREND(known_data_y, [known_data_x], [new_data_x], [b]) |
Fits points to linear trend derived via least-squares (not compatible with Excel) |
VAR(value1, [value2, …]) |
|
VAR.P(value1, [value2, …]) |
|
VAR.S(value1, [value2, …]) |
|
VARA(value1, [value2, …]) |
|
VARP(value1, [value2, …]) |
|
VARPA(value1, [value2, …]) |
Text¶
Name and arguments |
Description or link |
---|---|
CHAR(table_number) |
|
CLEAN(text) |
|
CONCATENATE(string1, [string2, …]) |
|
EXACT(string1, string2) |
|
FIND(search_for, text_to_search, [starting_at]) |
|
JOIN(delimiter, value_or_array1, [value_or_array2, …]) |
Concatenates elements of arrays with delimiter (not compatible with Excel) |
LEFT(text, [number_of_characters]) |
|
LEN(text) |
|
LOWER(text) |
|
MID(text, starting_at, extract_length) |
|
PROPER(text_to_capitalize) |
|
REPLACE(text, position, length, new_text) |
|
RIGHT(text, [number_of_characters]) |
|
SEARCH(search_for, text_to_search, [starting_at]) |
|
SPLIT(text, delimiter, [split_by_each], [remove_empty_text]) |
|
SUBSTITUTE(text_to_search, search_for, replace_with, [occurrence_number]) |
|
TEXT(number, format) |
|
TEXTJOIN(delimiter, ignore_empty, text1, [text2, …]) |
|
TRIM(text) |
|
UPPER(text) |
Web¶
Name and arguments |
Description or link |
---|---|
HYPERLINK(url, [link_label]) |