If you use DAX, you should try DAX Formatter. Now it supports all the new functions introduced in Power BI Desktop and in Excel 2016.

There are more than 70 new functions, even if half of them corresponds to Excel functions with the same name (see the second group). DAX Formatter also supports the variable syntax available in the new DAX.

These are the new “original” DAX functions:

And this is the list of the functions identical to the Excel ones:

ADDMISSINGITEMS

Add the rows with empty measure values back.

ADDMISSINGITEMS ( [<ShowAll_ColumnName> [, <ShowAll_ColumnName> [, … ] ] ], <Table> [, <GroupBy_ColumnName> [, [<FilterTable>] [, <GroupBy_ColumnName> [, [<FilterTable>] [, … ] ] ] ] ] ] )

CALENDAR

Returns a table with one column of all dates between StartDate and EndDate.

CALENDAR ( <StartDate>, <EndDate> )

CALENDARAUTO

Returns a table with one column of dates calculated from the model automatically.

CALENDARAUTO ( [<FiscalYearEndMonth>] )

CONCATENATEX

Evaluates expression for each row on the table, then return the concatenation of those values in a single string result, seperated by the specified delimiter.

CONCATENATEX ( <Table>, <Expression> [, <Delimiter>] [, <OrderBy_Expression> [, [<Order>] [, <OrderBy_Expression> [, [<Order>] [, … ] ] ] ] ] )

CROSSFILTER
CALCULATE modifier

Specifies cross filtering direction to be used in the evaluation of a DAX expression. The relationship is defined by naming, as arguments, the two columns that serve as endpoints.

CROSSFILTER ( <LeftColumnName>, <RightColumnName>, <CrossFilterType> )

CURRENTGROUP

Access to the (sub)table representing current group in GroupBy function. Can be used only inside GroupBy function.

CURRENTGROUP ( )

DATEDIFF

Returns the number of units (unit specified in Interval) between the input two dates.

DATEDIFF ( <Date1>, <Date2>, <Interval> )

EXACT

Checks whether two text strings are exactly the same, and returns TRUE or FALSE. EXACT is case-sensitive.

EXACT ( <Text1>, <Text2> )

EXCEPT

Returns the rows of left-side table which do not appear in right-side table.

EXCEPT ( <LeftTable>, <RightTable> )

GEOMEAN

Returns geometric mean of given column reference.

GEOMEAN ( <ColumnName> )

GEOMEANX

Returns geometric mean of an expression values in a table.

GEOMEANX ( <Table>, <Expression> )

GROUPBY

Creates a summary the input table grouped by the specified columns.

GROUPBY ( <Table> [, <GroupBy_ColumnName> [, [<Name>] [, [<Expression>] [, <GroupBy_ColumnName> [, [<Name>] [, [<Expression>] [, … ] ] ] ] ] ] ] )

IGNORE

Tags a measure expression specified in the call to SUMMARIZECOLUMNS function to be ignored when determining the non-blank rows.

IGNORE ( <Measure_Expression> )

INTERSECT

Returns the rows of left-side table which appear in right-side table.

INTERSECT ( <LeftTable>, <RightTable> )

ISONORAFTER

The IsOnOrAfter function is a boolean function that emulates the behavior of Start At clause and returns true for a row that meets all the conditions mentioned as parameters in this function.

ISONORAFTER ( <Value1>, <Value2> [, [<Order>] [, <Value1>, <Value2> [, [<Order>] [, … ] ] ] ] )

KEYWORDMATCH

Returns TRUE if there is a match between the MatchExpression and Text.

KEYWORDMATCH ( <MatchExpression>, <Text> )

MEDIAN

Returns the 50th percentile of values in a column.

MEDIAN ( <Column> )

MEDIANX

Returns the 50th percentile of an expression values in a table.

MEDIANX ( <Table>, <Expression> )

NATURALINNERJOIN

Joins the Left table with right table using the Inner Join semantics.

NATURALINNERJOIN ( <LeftTable>, <RightTable> )

NATURALLEFTOUTERJOIN

Joins the Left table with right table using the Left Outer Join semantics.

NATURALLEFTOUTERJOIN ( <LeftTable>, <RightTable> )

PERCENTILE.EXC

Returns the k-th (exclusive) percentile of values in a column.

PERCENTILE.EXC ( <Column>, <K> )

PERCENTILE.INC

Returns the k-th (inclusive) percentile of values in a column.

PERCENTILE.INC ( <Column>, <K> )

PERCENTILEX.EXC

Returns the k-th (exclusive) percentile of an expression values in a table.

PERCENTILEX.EXC ( <Table>, <Expression>, <K> )

PERCENTILEX.INC

Returns the k-th (inclusive) percentile of an expression values in a table.

PERCENTILEX.INC ( <Table>, <Expression>, <K> )

PRODUCT

Returns the product of given column reference.

PRODUCT ( <ColumnName> )

PRODUCTX

Returns the product of an expression values in a table.

PRODUCTX ( <Table>, <Expression> )

ROLLUPADDISSUBTOTAL

Identifies a subset of columns specified in the call to SUMMARIZECOLUMNS function that should be used to calculate groups of subtotals.

ROLLUPADDISSUBTOTAL ( [<GrandtotalFilter>], <GroupBy_ColumnName>, <Name> [, [<GroupLevelFilter>] [, <GroupBy_ColumnName>, <Name> [, [<GroupLevelFilter>] [, … ] ] ] ] )

ROLLUPISSUBTOTAL

Pairs up the rollup groups with the column added by ROLLUPADDISSUBTOTAL.

ROLLUPISSUBTOTAL ( [<GrandtotalFilter>], <GroupBy_ColumnName>, <IsSubtotal_ColumnName> [, [<GroupLevelFilter>] [, <GroupBy_ColumnName>, <IsSubtotal_ColumnName> [, [<GroupLevelFilter>] [, … ] ] ] ] )

SELECTCOLUMNS

Returns a table with selected columns from the table and new columns specified by the DAX expressions.

SELECTCOLUMNS ( <Table> [[, <Name>], <Expression> [[, <Name>], <Expression> [, … ] ] ] )

SUBSTITUTEWITHINDEX

Returns a table which represents the semijoin of two tables supplied and for which the common set of columns are replaced by a 0-based index column. The index is based on the rows of the second table sorted by specified order expressions.

SUBSTITUTEWITHINDEX ( <Table>, <Name>, <SemiJoinIndexTable>, <Expression> [, [<Order>] [, <Expression> [, [<Order>] [, … ] ] ] ] )

SUMMARIZECOLUMNS

Create a summary table for the requested totals over set of groups.

SUMMARIZECOLUMNS ( [<GroupBy_ColumnName> [, [<FilterTable>] [, [<Name>] [, [<Expression>] [, <GroupBy_ColumnName> [, [<FilterTable>] [, [<Name>] [, [<Expression>] [, … ] ] ] ] ] ] ] ] ] )

UNION

Returns the union of the tables whose columns match.

UNION ( <Table>, <Table> [, <Table> [, … ] ] )

XIRR

Returns the internal rate of return for a schedule of cash flows that is not necessarily periodic.

XIRR ( <Table>, <Values>, <Dates> [, <Guess>] [, <AlternateResult>] )

XNPV

Returns the net present value for a schedule of cash flows.

XNPV ( <Table>, <Values>, <Dates>, <Rate> )

ACOS

Returns the arccosine, or inverse cosine, of a number. The arccosine is the angle whose cosine is number. The returned angle is given in radians in the range 0 (zero) to pi.

ACOS ( <Number> )

ACOSH

Returns the inverse hyperbolic cosine of a number. The number must be greater than or equal to 1. The inverse hyperbolic cosine is the value whose hyperbolic cosine is number, so ACOSH(COSH(number)) equals number.

ACOSH ( <Number> )

ACOT

Returns the principal value of the arccotangent, or inverse cotangent, of a number.

ACOT ( <Number> )

ACOTH

Returns the inverse hyperbolic cotangent of a number.

ACOTH ( <Number> )

ASIN

Returns the arcsine, or inverse sine, of a number. The arcsine is the angle whose sine is number. The returned angle is given in radians in the range -pi/2 to pi/2.

ASIN ( <Number> )

ASINH

Returns the inverse hyperbolic sine of a number. The inverse hyperbolic sine is the value whose hyperbolic sine is number, so ASINH(SINH(number)) equals number.

ASINH ( <Number> )

ATAN

Returns the arctangent, or inverse tangent, of a number. The arctangent is the angle whose tangent is number. The returned angle is given in radians in the range -pi/2 to pi/2.

ATAN ( <Number> )

ATANH

Returns the inverse hyperbolic tangent of a number. Number must be between -1 and 1 (excluding -1 and 1). The inverse hyperbolic tangent is the value whose hyperbolic tangent is number, so ATANH(TANH(number)) equals number.

ATANH ( <Number> )

BETA.DIST

Returns the beta distribution. The beta distribution is commonly used to study variation in the percentage of something across samples, such as the fraction of the day people spend watching television.

BETA.DIST ( <X>, <Alpha>, <Beta>, <Cumulative> [, <A>] [, <B>] )

BETA.INV

Returns the inverse of the beta cumulative probability density function (BETA.DIST). If probability = BETA.DIST(x,…TRUE), then BETA.INV(probability,…) = x. The beta distribution can be used in project planning to model probable completion times given an expected completion time and variability.

BETA.INV ( <Probability>, <Alpha>, <Beta> [, <A>] [, <B>] )

CEILING

Rounds a number up, to the nearest integer or to the nearest unit of significance.

CEILING ( <Number>, <Significance> )

CHISQ.DIST

Returns the chi-squared distribution. The chi-squared distribution is commonly used to study variation in the percentage of something across samples, such as the fraction of the day people spend watching television.

CHISQ.DIST ( <X>, <Deg_freedom>, <Cumulative> )

CHISQ.DIST.RT

Returns the right-tailed probability of the chi-squared distribution. The chi-squared distribution is associated with a chi-squared test. Use the chi-squared test to compare observed and expected values. For example, a genetic experiment might hypothesize that the next generation of plants will exhibit a certain set of colors. By comparing the observed results with the expected ones, you can decide whether your original hypothesis is valid.

CHISQ.DIST.RT ( <X>, <Deg_freedom> )

CHISQ.INV

Returns the inverse of the left-tailed probability of the chi-squared distribution. The chi-squared distribution is commonly used to study variation in the percentage of something across samples, such as the fraction of the day people spend watching television.

CHISQ.INV ( <Probability>, <Deg_freedom> )

CHISQ.INV.RT

Returns the inverse of the right-tailed probability of the chi-squared distribution. If probability = CHISQ.DIST.RT(x,…), then CHISQ.INV.RT(probability,…) = x. Use this function to compare observed results with expected ones in order to decide whether your original hypothesis is valid.

CHISQ.INV.RT ( <Probability>, <Deg_freedom> )

COMBIN

Returns the number of combinations for a given number of items. Use COMBIN to determine the total possible number of groups for a given number of items.

COMBIN ( <Number>, <Number_chosen> )

COMBINA

Returns the number of combinations (with repetitions) for a given number of items.

COMBINA ( <Number>, <Number_chosen> )

CONFIDENCE.NORM

Returns the confidence interval for a population mean, using a normal distribution.

CONFIDENCE.NORM ( <Alpha>, <Standard_dev>, <Size> )

CONFIDENCE.T

Returns the confidence interval for a population mean, using a Student’s t distribution.

CONFIDENCE.T ( <Alpha>, <Standard_dev>, <Size> )

COS

Returns the cosine of the given angle.

COS ( <Number> )

COSH

Returns the hyperbolic cosine of a number.

COSH ( <Number> )

COT

Return the cotangent of an angle specified in radians.

COT ( <Number> )

COTH

Return the hyperbolic cotangent of a hyperbolic angle.

COTH ( <Number> )

DEGREES

Converts radians into degrees.

DEGREES ( <Number> )

EVEN

Returns number rounded up to the nearest even integer. You can use this function for processing items that come in twos. For example, a packing crate accepts rows of one or two items. The crate is full when the number of items, rounded up to the nearest two, matches the crate’s capacity.

EVEN ( <Number> )

EXPON.DIST

Returns the exponential distribution. Use EXPON.DIST to model the time between events, such as how long an automated bank teller takes to deliver cash. For example, you can use EXPON.DIST to determine the probability that the process takes at most 1 minute.

EXPON.DIST ( <X>, <Lambda>, <Cumulative> )

GCD

Returns the greatest common divisor of two integers. The greatest common divisor is the largest integer that divides both number1 and number2 without a remainder.

GCD ( <Number1>, <Number2> )

ISODD

Returns TRUE if number is odd, or FALSE if number is even.

ISODD ( <Number> )

ISEVEN

Returns TRUE if number is even, or FALSE if number is odd.

ISEVEN ( <Number> )

LCM

Returns the least common multiple of integers. The least common multiple is the smallest positive integer that is a multiple of both integer arguments number1, number2. Use LCM to add fractions with different denominators.

LCM ( <Number1>, <Number2> )

ODD

Returns number rounded up to the nearest odd integer.

ODD ( <Number> )

PERMUT

Returns the number of permutations for a given number of objects that can be selected from number objects. A permutation is any set or subset of objects or events where internal order is significant. Permutations are different from combinations, for which the internal order is not significant. Use this function for lottery-style probability calculations.

PERMUT ( <Number>, <Number_chosen> )

POISSON.DIST

Returns the Poisson distribution. A common application of the Poisson distribution is predicting the number of events over a specific time, such as the number of cars arriving at a toll plaza in 1 minute.

POISSON.DIST ( <X>, <Mean>, <Cumulative> )

RADIANS

Converts degrees to radians.

RADIANS ( <Number> )

SIN

Returns the sine of the given angle.

SIN ( <Number> )

SINH

Returns the hyperbolic sine of a number.

SINH ( <Number> )

SQRTPI

Returns the square root of (number * pi).

SQRTPI ( <Number> )

TAN

Returns the tangent of the given angle.

TAN ( <Number> )

TANH

Returns the hyperbolic tangent of a number.

TANH ( <Number> )