Excel
Function reference
499 Excel functions grouped by category. Open one to see its syntax, an example and when to use it.
- 499 Functions
- 13 Categories
- 49 Frequently used
Lookup and reference36
ADDRESSBuilds a cell address as text from a row number and a column number.
ADDRESS(row_num, column_num, [abs_num], [a1], [sheet_text])
=ADDRESS(2,3)→ "$C$2"AREASReturns the number of areas in a reference, where an area is a contiguous range or a single cell.
AREAS(reference)
=AREAS((A1:B2,C3:D4))→ 2CHOOSEReturns a value from a list of arguments based on an index number.
CHOOSE(index_num, value1, [value2], ...)
=CHOOSE(2,"A","B","C")→ "B"Use it for: Turn a month number into a quarter, or a weekday number into a day name.
CHOOSECOLSReturns the specified columns from an array or range.Microsoft 365
CHOOSECOLS(array, col_num1, [col_num2], ...)
=CHOOSECOLS(A1:E10,1,3)CHOOSEROWSReturns the specified rows from an array or range.Microsoft 365
CHOOSEROWS(array, row_num1, [row_num2], ...)
=CHOOSEROWS(A1:E10,1,5)COLUMNReturns the column number of a cell reference.
COLUMN([reference])
=COLUMN(C5)→ 3COLUMNSReturns the number of columns in a range or array.
COLUMNS(array)
=COLUMNS(A1:E10)→ 5DROPReturns an array after removing a set number of rows or columns from its start or end.Microsoft 365
DROP(array, rows, [columns])
=DROP(A1:E10,2)EXPANDExpands an array to the given number of rows and columns and fills the new cells with a padding value (#N/A by default).Microsoft 365
EXPAND(array, rows, [columns], [pad_with])
=EXPAND(A1:B2,3,3,0)FILTERFilters a range by a condition and returns the matching rows as a dynamic array.Microsoft 365
FILTER(array, include, [if_empty])
=FILTER(A:C,B:B>1000)→ Rows where column B is greater than 1000Use it for: Show a list of sales over 1,000 that updates itself when the data changes.
FORMULATEXTReturns the formula in the referenced cell as text.Excel 2013
FORMULATEXT(reference)
=FORMULATEXT(B2)Use it for: Display a formula next to its result for workbook documentation or teaching material.
GETPIVOTDATAReturns data shown in a PivotTable based on the fields and items you name.
GETPIVOTDATA(data_field, pivot_table, ...)
=GETPIVOTDATA("Sales",A3,"Region","KL")HLOOKUPSearches the first row of a table and returns a value from the row you specify in the same column; in Microsoft 365, XLOOKUP is more flexible.
HLOOKUP(lookup_value, table_array, row_index, [range_lookup])
=HLOOKUP("Jan",A1:M5,3,FALSE)HSTACKStacks arrays side by side horizontally into a single array.Microsoft 365
HSTACK(array1, [array2], ...)
=HSTACK(A1:A5,B1:B5)HYPERLINKCreates a clickable link to a web page, a file, or a location in the workbook.
HYPERLINK(link_location, [friendly_name])
=HYPERLINK("https://academy.sasateguh.com","Go")IMAGEInserts an image from a URL into a cell.Microsoft 365
IMAGE(source, [alt_text], [sizing], [height], [width])
=IMAGE("https://example.com/logo.png")INDEXReturns the value or reference at the intersection of a given row and column in a range.
INDEX(array, row_num, [column_num])
=INDEX(A:C,5,2)Use it for: Combine with MATCH for two-way lookups or lookups to the left.
INDIRECTConverts a text string into a cell or range reference.
INDIRECT(ref_text, [a1])
=INDIRECT("A"&B1)Use it for: Pull data from a sheet whose name is typed in a cell, such as a monthly report sheet.
LOOKUPSearches a single row or column sorted in ascending order and returns the value in the same position from a second row or column.
LOOKUP(lookup_value, lookup_vector, [result_vector])
=LOOKUP("Apple",A:A,B:B)MATCHReturns the relative position of a value in a range.
MATCH(lookup_value, lookup_array, [match_type])
=MATCH("Apple",A:A,0)Use it for: Pair with INDEX to find a row or column number dynamically.
OFFSETReturns a reference shifted a given number of rows and columns from a starting cell, with an optional height and width.
OFFSET(reference, rows, cols, [height], [width])
=OFFSET(A1,5,2)Use it for: Build a dynamic range, such as a rolling 12-month total that moves as new data is added.
ROWReturns the row number of a cell reference.
ROW([reference])
=ROW(B5)→ 5ROWSReturns the number of rows in a range or array.
ROWS(array)
=ROWS(A1:A10)→ 10SORTSorts the contents of a range or array, and the result updates when the source data changes.Microsoft 365
SORT(array, [sort_index], [sort_order], [by_col])
=SORT(A2:B10,2,-1)→ The range sorted by column 2, descendingSORTBYSorts a range or array based on the values in a corresponding range.Microsoft 365
SORTBY(array, by_array1, [sort_order1], ...)
=SORTBY(A2:A10,B2:B10,-1)TAKEReturns a set number of rows or columns from the start or end of an array.Microsoft 365
TAKE(array, rows, [columns])
=TAKE(A:C,5)→ First 5 rowsTOCOLReturns an array as a single column.Microsoft 365
TOCOL(array, [ignore], [scan_by_column])
=TOCOL(A1:C3)TOROWReturns an array as a single row.Microsoft 365
TOROW(array, [ignore], [scan_by_column])
=TOROW(A1:C3)TRANSPOSESwitches rows to columns and columns to rows.
TRANSPOSE(array)
=TRANSPOSE(A1:E1)→ A horizontal row becomes a vertical columnUNIQUEReturns a list of unique values from a range or array.Microsoft 365
UNIQUE(array, [by_col], [exactly_once])
=UNIQUE(A:A)→ List of unique values in column AVLOOKUPSearches the first column of a table and returns a value from the column you specify in the same row; set the last argument to FALSE or 0 for an exact match.
VLOOKUP(lookup_value, table, col_index, [exact])
=VLOOKUP(A2,Products,3,FALSE)→ Value from column 3 of Products for an exact match on A2Use it for: Look up a product's price or name from its product code.
VSTACKStacks arrays vertically, one below the other, into a single array.Microsoft 365
VSTACK(array1, [array2], ...)
=VSTACK(A1:A5,B1:B5)WRAPCOLSRearranges a single row or column of values into a two-dimensional array, column by column, after a set number of values.Microsoft 365
WRAPCOLS(vector, wrap_count, [pad_with])
=WRAPCOLS(A1:A12,3)WRAPROWSRearranges a single row or column of values into a two-dimensional array, row by row, after a set number of values.Microsoft 365
WRAPROWS(vector, wrap_count, [pad_with])
=WRAPROWS(A1:A12,4)XLOOKUPSearches a range and returns the item at the matching position in another range, with exact match by default, lookups to the left, and a fallback value when nothing is found.Microsoft 365
XLOOKUP(lookup, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
=XLOOKUP(A2,Codes,Prices,"NA")Use it for: Replace VLOOKUP in new workbooks, for example to find a price from a product code.
XMATCHReturns the relative position of a value in a range, with exact match by default plus wildcard matching and searching from the end.Microsoft 365
XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
=XMATCH("Apple",A:A)Logical19
ANDReturns TRUE if all arguments are TRUE, and FALSE if any argument is FALSE.
AND(logical1, [logical2], ...)
=IF(AND(B2>500,C2<100),"OK","No")Use it for: Checking that a record meets several conditions at once, such as sales above target and complaints below a limit.
BYCOLApplies a LAMBDA to each column of an array and returns one result per column.Microsoft 365
BYCOL(array, lambda)
=BYCOL(A1:C10,LAMBDA(c,SUM(c)))BYROWApplies a LAMBDA to each row of an array and returns one result per row.Microsoft 365
BYROW(array, lambda)
=BYROW(A1:C10,LAMBDA(r,SUM(r)))FALSEReturns the logical value FALSE.
FALSE()
=FALSE()IFTests a condition and returns one value if it is true and another value if it is false.
IF(logical_test, value_if_true, value_if_false)
=IF(B2>1000,"High","Low")Use it for: Marking each student as Pass or Fail based on a minimum score.
IFERRORReturns a value you specify if a formula produces an error, and the result of the formula otherwise.
IFERROR(value, value_if_error)
=IFERROR(A2/B2,0)→ 0 if A2/B2 returns an error such as #DIV/0!Use it for: Showing 0 or a blank on a dashboard instead of #DIV/0! or #N/A.
IFNAReturns a value you specify only when a formula results in the #N/A error, and the result of the formula otherwise.Excel 2013
IFNA(value, value_if_na)
=IFNA(VLOOKUP(A2,D,2,0),"Not Found")IFSChecks several conditions in order and returns the value for the first one that is true, without nesting IF functions.Excel 2019
IFS(condition1, value1, [condition2, value2], ...)
=IFS(B2>=80,"A",B2>=60,"B",TRUE,"C")Use it for: Converting exam scores into A, B, or C grades.
LAMBDACreates a reusable custom function with its own parameters and calculation, without VBA.Microsoft 365
LAMBDA([parameter1, parameter2, ...], calculation)
=LAMBDA(x,x*2)(5)→ 10LETAssigns names to values or intermediate calculations inside a formula so they can be reused and the formula is easier to read.Microsoft 365
LET(name1, value1, [name2, value2], ..., calculation)
=LET(x,B2,x*0.06)Use it for: Shortening a long formula that repeats the same lookup several times.
MAKEARRAYReturns an array with the number of rows and columns you specify, with each value calculated by a LAMBDA.Microsoft 365
MAKEARRAY(rows, cols, lambda)
=MAKEARRAY(3,3,LAMBDA(r,c,r*c))MAPApplies a LAMBDA to each value in one or more arrays and returns an array of results of the same size.Microsoft 365
MAP(array1, [array2], ..., lambda)
=MAP(A1:A5,LAMBDA(x,x*2))NOTReverses the logical value of its argument, turning TRUE into FALSE and FALSE into TRUE.
NOT(logical)
=NOT(B2=0)ORReturns TRUE if at least one argument is TRUE, and FALSE if all arguments are FALSE.
OR(logical1, [logical2], ...)
=IF(OR(B2="VIP",C2>10000),"Priority","Normal")REDUCEReduces an array to a single accumulated value by applying a LAMBDA to each value together with an accumulator.Microsoft 365
REDUCE([initial_value], array, lambda)
=REDUCE(0,A1:A5,LAMBDA(acc,x,acc+x))SCANApplies a LAMBDA to each value in an array and returns an array of every intermediate accumulator value, such as a running total.Microsoft 365
SCAN([initial_value], array, lambda)
=SCAN(0,A1:A5,LAMBDA(a,x,a+x))→ Running total of A1:A5SWITCHCompares an expression against a list of values and returns the result for the first match, or a default value if nothing matches.Excel 2019
SWITCH(expression, value1, result1, [value2, result2], ..., [default])
=SWITCH(A2,"Jan",1,"Feb",2,"Mar",3,0)TRUEReturns the logical value TRUE.
TRUE()
=TRUE()XORReturns TRUE when an odd number of arguments are TRUE, and FALSE when an even number are.Excel 2013
XOR(logical1, [logical2], ...)
=XOR(TRUE,FALSE)→ TRUEMath and trigonometry80
ABSReturns the absolute value of a number, which is the number without its sign.
ABS(number)
=ABS(-15)→ 15Use it for: Measuring how far actual spending differs from the budget, regardless of whether it is over or under.
ACOSReturns the arccosine of a number between -1 and 1 as an angle in radians from 0 to π.
ACOS(number)
=ACOS(0.5)→ ≈ 1.047 (60°)ACOSHReturns the inverse hyperbolic cosine of a number greater than or equal to 1.
ACOSH(number)
=ACOSH(1)ACOTReturns the arccotangent of a number as an angle in radians between 0 and π.Excel 2013
ACOT(number)
=ACOT(2)ACOTHReturns the inverse hyperbolic cotangent of a number whose absolute value is greater than 1.Excel 2013
ACOTH(number)
=ACOTH(6)AGGREGATEApplies one of 19 aggregate calculations, such as SUM or AVERAGE, with options to ignore errors, hidden rows, or nested SUBTOTAL results.Excel 2010
AGGREGATE(function_num, options, ref1, ...)
=AGGREGATE(9,6,B2:B10)→ Sum of B2:B10, ignoring errorsUse it for: Totaling a sales column on a dashboard even when some cells contain errors such as #N/A.
ARABICConverts a Roman numeral written as text into an Arabic number.Excel 2013
ARABIC(text)
=ARABIC("MCMXC")→ 1990ASINReturns the arcsine of a number between -1 and 1 as an angle in radians from -π/2 to π/2.
ASIN(number)
=ASIN(1)→ ≈ 1.571 (90°)ASINHReturns the inverse hyperbolic sine of a number.
ASINH(number)
=ASINH(1)ATANReturns the arctangent of a number as an angle in radians between -π/2 and π/2.
ATAN(number)
=ATAN(1)→ ≈ 0.785 (45°)ATAN2Returns the arctangent of the given x and y coordinates as an angle in radians between -π and π.
ATAN2(x_num, y_num)
=ATAN2(1,1)→ ≈ 0.785 (45°)ATANHReturns the inverse hyperbolic tangent of a number between -1 and 1.
ATANH(number)
=ATANH(0.5)BASEConverts a number into its text representation in the given base (radix), such as base 2 for binary.Excel 2013
BASE(number, radix, [min_length])
=BASE(15,2)→ "1111" (binary)CEILINGRounds a number up to the nearest multiple of significance and has been superseded by CEILING.MATH.
CEILING(number, significance)
=CEILING(2.5,1)→ 3CEILING.MATHRounds a number up to the nearest integer or to the nearest multiple of significance.Excel 2013
CEILING.MATH(number, [significance], [mode])
=CEILING.MATH(4.3)→ 5CEILING.PRECISERounds a number toward positive infinity to the nearest integer or multiple, regardless of the sign of the number.Excel 2010
CEILING.PRECISE(number, [significance])
=CEILING.PRECISE(-4.3)→ -4COMBINReturns the number of ways to choose a given number of items from a set without repetition, where order does not matter (nCr).
COMBIN(number, number_chosen)
=COMBIN(8,2)→ 28Use it for: Counting how many matches are needed when 8 teams each play every other team once.
COMBINAReturns the number of combinations, with repetition allowed, for choosing a given number of items from a set.Excel 2013
COMBINA(number, number_chosen)
=COMBINA(4,3)→ 20COSReturns the cosine of an angle given in radians.
COS(number)
=COS(0)→ 1COSHReturns the hyperbolic cosine of a number.
COSH(number)
=COSH(1)COTReturns the cotangent of an angle given in radians, equal to 1/TAN(number).Excel 2013
COT(number)
=COT(1)COTHReturns the hyperbolic cotangent of a number.Excel 2013
COTH(number)
=COTH(1)CSCReturns the cosecant of an angle given in radians, equal to 1/SIN(number).Excel 2013
CSC(number)
=CSC(1)CSCHReturns the hyperbolic cosecant of a number.Excel 2013
CSCH(number)
=CSCH(1)DECIMALConverts a text representation of a number in a given base into a decimal (base 10) number.Excel 2013
DECIMAL(text, radix)
=DECIMAL("FF",16)→ 255DEGREESConverts an angle from radians to degrees.
DEGREES(angle)
=DEGREES(PI())→ 180EVENRounds a number away from zero to the nearest even integer.
EVEN(number)
=EVEN(3)→ 4EXPReturns the constant e (about 2.71828) raised to the given exponent.
EXP(number)
=EXP(1)→ ≈ 2.718 (e)FACTReturns the factorial of a number, which is the product 1 × 2 × … × n.
FACT(number)
=FACT(5)→ 120Use it for: Counting the ways to order 5 speakers in a presentation lineup.
FACTDOUBLEReturns the double factorial of a number, the product of that number and every smaller positive integer of the same parity, such as 7 × 5 × 3 × 1.
FACTDOUBLE(number)
=FACTDOUBLE(7)→ 105 (7×5×3×1)FLOORRounds a number down to the nearest multiple of significance and has been superseded by FLOOR.MATH.
FLOOR(number, significance)
=FLOOR(2.7,1)→ 2FLOOR.MATHRounds a number down to the nearest integer or to the nearest multiple of significance.Excel 2013
FLOOR.MATH(number, [significance], [mode])
=FLOOR.MATH(4.7)→ 4FLOOR.PRECISERounds a number toward negative infinity to the nearest integer or multiple, regardless of the sign of the number.Excel 2010
FLOOR.PRECISE(number, [significance])
=FLOOR.PRECISE(-4.3)→ -5GCDReturns the greatest common divisor, the largest integer that divides all the given numbers with no remainder.
GCD(number1, [number2], ...)
=GCD(12,18)→ 6INTRounds a number down to the nearest integer, toward negative infinity.
INT(number)
=INT(8.9)→ 8Use it for: Finding how many full cartons a stock quantity fills when divided by the carton size.
ISO.CEILINGRounds a number up to the nearest integer or multiple regardless of sign, the same as CEILING.PRECISE.Excel 2013
ISO.CEILING(number, [significance])
=ISO.CEILING(4.3)→ 5LCMReturns the least common multiple, the smallest positive integer that is divisible by all the given numbers.
LCM(number1, [number2], ...)
=LCM(4,6)→ 12LNReturns the natural logarithm (base e) of a number.
LN(number)
=LN(EXP(1))→ 1LOGReturns the logarithm of a number in the base you specify, or base 10 if the base is omitted.
LOG(number, [base])
=LOG(100,10)→ 2LOG10Returns the base-10 logarithm of a number.
LOG10(number)
=LOG10(1000)→ 3MDETERMReturns the determinant of a square matrix.
MDETERM(array)
=MDETERM(A1:B2)MINVERSEReturns the inverse of a square matrix.
MINVERSE(array)
=MINVERSE(A1:B2)MMULTReturns the matrix product of two arrays, where the column count of the first must equal the row count of the second.
MMULT(array1, array2)
=MMULT(A1:B2,C1:D2)MODReturns the remainder after a number is divided by a divisor, with the same sign as the divisor.
MOD(number, divisor)
=MOD(10,3)→ 1 (remainder)Use it for: Shading every other row through Conditional Formatting with =MOD(ROW(),2)=0.
MROUNDRounds a number to the nearest multiple of the value you specify.
MROUND(number, multiple)
=MROUND(7,5)→ 5MULTINOMIALReturns the ratio of the factorial of the sum of the given values to the product of their individual factorials.
MULTINOMIAL(number1, [number2], ...)
=MULTINOMIAL(2,3,4)→ 1260MUNITReturns the unit (identity) matrix for the given dimension.Excel 2013
MUNIT(dimension)
=MUNIT(3)→ 3×3 identity matrixODDRounds a number away from zero to the nearest odd integer.
ODD(number)
=ODD(2)→ 3PIReturns the constant π, 3.14159265358979, accurate to 15 digits.
PI()
=PI()POWERReturns a number raised to an exponent, the same as the ^ operator.
POWER(number, power)
=POWER(2,10)→ 1024Use it for: Calculating the value of savings after several years of compound interest, for example =B2*POWER(1+B3,B4).
PRODUCTMultiplies all the given numbers and returns the product.
PRODUCT(number1, [number2], ...)
=PRODUCT(2,3,4)→ 24QUOTIENTReturns the integer portion of a division and discards the remainder.
QUOTIENT(numerator, denominator)
=QUOTIENT(10,3)→ 3RADIANSConverts an angle from degrees to radians.
RADIANS(angle)
=RADIANS(180)→ π ≈ 3.14159RANDReturns a random number greater than or equal to 0 and less than 1 that changes each time the worksheet recalculates.
RAND()
=RAND()→ Example: 0.7384 (changes on every recalculation)Use it for: Generating sample data to test formulas before the real data is available.
RANDARRAYReturns an array of random numbers with the row count, column count, minimum, maximum, and type (whole or decimal) you specify.Microsoft 365
RANDARRAY([rows], [cols], [min], [max], [integer])
=RANDARRAY(5,2,1,100,TRUE)→ 5×2 array of random integers from 1 to 100RANDBETWEENReturns a random integer between the two numbers you specify, inclusive, and changes each time the worksheet recalculates.
RANDBETWEEN(bottom, top)
=RANDBETWEEN(1,100)→ Random integer from 1 to 100Use it for: Filling a column with sample scores between 1 and 100 for a training exercise.
ROMANConverts an Arabic number to a Roman numeral as text.
ROMAN(number, [form])
=ROMAN(2024)→ "MMXXIV"ROUNDRounds a number to a specified number of digits, with halves rounded away from zero.
ROUND(number, num_digits)
=ROUND(3.14159,2)→ 3.14Use it for: Showing currency totals to two decimal places in a financial report.
ROUNDDOWNRounds a number down, toward zero, to a specified number of digits.
ROUNDDOWN(number, num_digits)
=ROUNDDOWN(3.9,0)→ 3ROUNDUPRounds a number up, away from zero, to a specified number of digits.
ROUNDUP(number, num_digits)
=ROUNDUP(3.1,0)→ 4SECReturns the secant of an angle given in radians, equal to 1/COS(number).Excel 2013
SEC(number)
=SEC(0)→ 1SECHReturns the hyperbolic secant of a number.Excel 2013
SECH(number)
=SECH(0)→ 1SERIESSUMReturns the sum of a series in which each coefficient is multiplied by x raised to an exponent that starts at n and increases by m.
SERIESSUM(x, n, m, coefficients)
=SERIESSUM(2,1,1,{1,2,3})SIGNReturns 1 if the number is positive, 0 if it is zero, and -1 if it is negative.
SIGN(number)
=SIGN(-50)→ -1Use it for: Flagging whether each month's profit rose, held steady, or fell compared with the previous month.
SINReturns the sine of an angle given in radians.
SIN(number)
=SIN(PI()/2)→ 1SINHReturns the hyperbolic sine of a number.
SINH(number)
=SINH(0)SQRTReturns the positive square root of a number.
SQRT(number)
=SQRT(144)→ 12SQRTPIReturns the square root of a number multiplied by π.
SQRTPI(number)
=SQRTPI(1)→ ≈ 1.7725SUBTOTALReturns a subtotal using a chosen function, such as SUM, AVERAGE, or COUNT, and ignores rows hidden by a filter (codes 101 to 111 also ignore rows hidden manually).
SUBTOTAL(function_num, ref1, ...)
=SUBTOTAL(9,B2:B100)→ Sum of B2:B100, excluding rows hidden by a filterUse it for: Showing a sales total that changes to match the visible rows after a table is filtered.
SUMAdds all the numbers in the given ranges, cell references, or values.
SUM(number1, [number2], ...)
=SUM(B2:B10)→ Total of the values in B2:B10Use it for: Totaling sales, expenses, or quantities for a period.
SUMIFAdds the values in a range that meet a single criterion.
SUMIF(range, criteria, [sum_range])
=SUMIF(A:A,"Food",B:B)→ Total of column B for rows with "Food" in column AUse it for: Totaling the expenses for one category, such as food.
SUMIFSAdds the values that meet multiple criteria, with the sum range as the first argument (unlike SUMIF).
SUMIFS(sum_range, criteria_range1, criteria1, ...)
=SUMIFS(C:C,A:A,"2026",B:B,"Sales")→ Total of column C for rows with 2026 in column A and "Sales" in column BUse it for: Totaling sales by month and category on a dashboard.
SUMPRODUCTMultiplies corresponding values in the given arrays and returns the sum of those products.
SUMPRODUCT(array1, [array2], ...)
=SUMPRODUCT(qty,price)→ Sum of qty × price across all rowsUse it for: Calculating a weighted average, or total revenue from quantity and unit price columns.
SUMSQReturns the sum of the squares of the given numbers.
SUMSQ(number1, [number2], ...)
=SUMSQ(2,3,4)→ 29 (4+9+16)SUMX2MY2Returns the sum of the differences of squares (x² - y²) for corresponding values in two arrays.
SUMX2MY2(array_x, array_y)
=SUMX2MY2(A:A,B:B)SUMX2PY2Returns the sum of the sums of squares (x² + y²) for corresponding values in two arrays.
SUMX2PY2(array_x, array_y)
=SUMX2PY2(A:A,B:B)SUMXMY2Returns the sum of the squared differences, (x - y)², for corresponding values in two arrays.
SUMXMY2(array_x, array_y)
=SUMXMY2(actual,forecast)Use it for: Measuring forecast accuracy by comparing forecast values with actual results.
TANReturns the tangent of an angle given in radians.
TAN(number)
=TAN(0)TANHReturns the hyperbolic tangent of a number.
TANH(number)
=TANH(0)TRUNCTruncates a number to a specified number of decimal places without rounding.
TRUNC(number, [num_digits])
=TRUNC(3.789,1)→ 3.7Statistical110
AVEDEVReturns the average of the absolute deviations of data points from their mean.
AVEDEV(number1, [number2], ...)
=AVEDEV(B2:B10)AVERAGEReturns the arithmetic mean of the numbers in a range; text, logical values, and empty cells in the range are ignored.
AVERAGE(number1, [number2], ...)
=AVERAGE(B2:B13)→ Average of the 12 monthly values in B2:B13Use it for: Find the average monthly sales across 12 months in column B.
AVERAGEAReturns the mean of all non-empty values, counting TRUE as 1 and both FALSE and text as 0.
AVERAGEA(value1, [value2], ...)
=AVERAGEA(A2:A10)AVERAGEIFReturns the average of the cells that meet a single criterion.
AVERAGEIF(range, criteria, [average_range])
=AVERAGEIF(B:B,"VIP",C:C)→ Average of column C for rows with "VIP" in column BAVERAGEIFSReturns the average of the cells that meet all of the specified criteria.
AVERAGEIFS(avg_range, criteria_range1, criteria1, ...)
=AVERAGEIFS(C:C,A:A,"2026",B:B,"Q1")Use it for: Calculate average Q1 2026 sales as a benchmark for the following quarters.
BETA.DISTReturns the beta distribution for x, as either a density or a cumulative probability.Excel 2010
BETA.DIST(x, alpha, beta, cumulative, [A], [B])
=BETA.DIST(2,8,10,TRUE,1,3)BETA.INVReturns the value of x that corresponds to a given cumulative probability in the beta distribution.Excel 2010
BETA.INV(probability, alpha, beta, [A], [B])
=BETA.INV(0.685,8,10,1,3)BINOM.DISTReturns the binomial probability of a given number of successes in a fixed number of trials.Excel 2010
BINOM.DIST(number_s, trials, prob_s, cumulative)
=BINOM.DIST(6,10,0.5,FALSE)BINOM.DIST.RANGEReturns the probability that the number of successes in a set of trials equals one value or falls between two values.Excel 2013
BINOM.DIST.RANGE(trials, prob_s, num_s, [num_s2])
=BINOM.DIST.RANGE(60,0.75,48)BINOM.INVReturns the smallest number of successes for which the cumulative binomial distribution is greater than or equal to alpha.Excel 2010
BINOM.INV(trials, probability_s, alpha)
=BINOM.INV(6,0.5,0.75)CHISQ.DISTReturns the left-tailed chi-squared distribution, as either a density or a cumulative probability.Excel 2010
CHISQ.DIST(x, deg_freedom, cumulative)
=CHISQ.DIST(0.5,1,TRUE)CHISQ.DIST.RTReturns the right-tailed probability of the chi-squared distribution.Excel 2010
CHISQ.DIST.RT(x, deg_freedom)
=CHISQ.DIST.RT(18.307,10)CHISQ.INVReturns the inverse of the left-tailed probability of the chi-squared distribution.Excel 2010
CHISQ.INV(probability, deg_freedom)
=CHISQ.INV(0.93,1)CHISQ.INV.RTReturns the inverse of the right-tailed probability of the chi-squared distribution.Excel 2010
CHISQ.INV.RT(probability, deg_freedom)
=CHISQ.INV.RT(0.05,10)CHISQ.TESTReturns the p-value of a chi-squared test of independence by comparing a range of observed values with a range of expected values.Excel 2010
CHISQ.TEST(actual_range, expected_range)
=CHISQ.TEST(A1:B3,D1:E3)CONFIDENCE.NORMReturns the margin of error for a confidence interval around a population mean, based on the normal distribution.Excel 2010
CONFIDENCE.NORM(alpha, std_dev, size)
=CONFIDENCE.NORM(0.05,2.5,50)CONFIDENCE.TReturns the margin of error for a confidence interval around a population mean, based on Student's t distribution.Excel 2010
CONFIDENCE.T(alpha, std_dev, size)
=CONFIDENCE.T(0.05,1,50)CORRELReturns the correlation coefficient of two ranges, a value between -1 and 1.
CORREL(array1, array2)
=CORREL(A:A,B:B)Use it for: Measure how closely monthly ad spend moves with monthly sales.
COUNTCounts the cells that contain numbers; text and empty cells are not counted.
COUNT(value1, [value2], ...)
=COUNT(B2:B100)Use it for: Count how many students already have a score in the marks column.
COUNTACounts the cells that are not empty, regardless of data type.
COUNTA(value1, [value2], ...)
=COUNTA(A2:A100)Use it for: Count the participants who have registered in a name list.
COUNTBLANKCounts the empty cells in a range.
COUNTBLANK(range)
=COUNTBLANK(B2:B100)Use it for: Check how many fields are still blank in a customer data sheet.
COUNTIFCounts the cells in a range that meet a single criterion.
COUNTIF(range, criteria)
=COUNTIF(B:B,">1000")→ Number of cells in column B greater than 1000Use it for: Count the transactions above RM1,000.
COUNTIFSCounts the number of times all criteria are met across several ranges.
COUNTIFS(range1, criteria1, ...)
=COUNTIFS(A:A,"KL",B:B,">5000")Use it for: Count customers in Kuala Lumpur who spent more than RM5,000.
COVARIANCE.PReturns the population covariance, the average of the products of deviations for each data pair.Excel 2010
COVARIANCE.P(array1, array2)
=COVARIANCE.P(A:A,B:B)COVARIANCE.SReturns the sample covariance of two data sets, using n-1 as the divisor.Excel 2010
COVARIANCE.S(array1, array2)
=COVARIANCE.S(A:A,B:B)DEVSQReturns the sum of the squared deviations of data points from their sample mean.
DEVSQ(number1, ...)
=DEVSQ(B2:B10)EXPON.DISTReturns the exponential distribution, as either a density or a cumulative probability.Excel 2010
EXPON.DIST(x, lambda, cumulative)
=EXPON.DIST(0.2,10,TRUE)F.DISTReturns the left-tailed F probability distribution, as either a density or a cumulative probability.Excel 2010
F.DIST(x, deg_freedom1, deg_freedom2, cumulative)
=F.DIST(15.2069,6,4,TRUE)F.DIST.RTReturns the right-tailed F probability distribution.Excel 2010
F.DIST.RT(x, deg_freedom1, deg_freedom2)
=F.DIST.RT(15.2069,6,4)F.INVReturns the inverse of the left-tailed F probability distribution for a given probability.Excel 2010
F.INV(probability, deg_freedom1, deg_freedom2)
=F.INV(0.01,6,4)F.INV.RTReturns the inverse of the right-tailed F probability distribution for a given probability.Excel 2010
F.INV.RT(probability, deg_freedom1, deg_freedom2)
=F.INV.RT(0.01,6,4)F.TESTReturns the two-tailed probability that the variances of two data sets are not significantly different.Excel 2010
F.TEST(array1, array2)
=F.TEST(A:A,B:B)FISHERReturns the Fisher transformation of x, commonly used when testing correlation coefficients.
FISHER(x)
=FISHER(0.75)FISHERINVReturns the inverse of the Fisher transformation, converting y back to a correlation coefficient.
FISHERINV(y)
=FISHERINV(0.9729)FORECAST.ETSPredicts a future value from historical data using the AAA version of the exponential triple smoothing (ETS) algorithm.Excel 2016
FORECAST.ETS(target_date, values, timeline, ...)
=FORECAST.ETS(A50,B2:B49,A2:A49)Use it for: Forecast next month's sales from monthly sales history that has a seasonal pattern.
FORECAST.ETS.CONFINTReturns the confidence interval for an ETS forecast value at a specified target date.Excel 2016
FORECAST.ETS.CONFINT(target_date, values, timeline, ...)
=FORECAST.ETS.CONFINT(A50,B2:B49,A2:A49)FORECAST.ETS.SEASONALITYReturns the length of the repeating seasonal pattern that Excel detects in a time series.Excel 2016
FORECAST.ETS.SEASONALITY(values, timeline, ...)
=FORECAST.ETS.SEASONALITY(B2:B49,A2:A49)FORECAST.ETS.STATReturns a statistic from an ETS forecast, such as a smoothing parameter or a forecast error measure.Excel 2016
FORECAST.ETS.STAT(values, timeline, statistic_type, ...)
=FORECAST.ETS.STAT(B2:B49,A2:A49,1)FORECAST.LINEARPredicts a y-value for a given x based on a linear regression of existing data.Excel 2016
FORECAST.LINEAR(x, known_ys, known_xs)
=FORECAST.LINEAR(30,B:B,A:A)FREQUENCYReturns a vertical array that counts how many values fall into each bin.
FREQUENCY(data_array, bins_array)
=FREQUENCY(A1:A20,B1:B5)Use it for: Count students in each score band to build a histogram.
GAMMAReturns the value of the gamma function for a number.Excel 2013
GAMMA(number)
=GAMMA(2.5)GAMMA.DISTReturns the gamma distribution, as either a density or a cumulative probability.Excel 2010
GAMMA.DIST(x, alpha, beta, cumulative)
=GAMMA.DIST(10.00001131,9,2,TRUE)GAMMA.INVReturns the inverse of the cumulative gamma distribution for a given probability.Excel 2010
GAMMA.INV(probability, alpha, beta)
=GAMMA.INV(0.068094,9,2)GAMMALNReturns the natural logarithm of the gamma function.
GAMMALN(x)
=GAMMALN(4.5)GAMMALN.PRECISEReturns the natural logarithm of the gamma function; it is the version of GAMMALN introduced in Excel 2010.Excel 2010
GAMMALN.PRECISE(x)
=GAMMALN.PRECISE(4)GAUSSReturns the probability that a standard normal value falls between the mean and x standard deviations from it, which is 0.5 less than NORM.S.DIST(x,TRUE).Excel 2013
GAUSS(x)
=GAUSS(2)GEOMEANReturns the geometric mean, the nth root of the product of n positive numbers.
GEOMEAN(number1, ...)
=GEOMEAN(B2:B10)Use it for: Calculate the average annual growth rate from each year's growth factor.
GROWTHPredicts values along an exponential growth curve fitted to existing data.
GROWTH(known_ys, [known_xs], [new_xs], [const])
=GROWTH(B2:B10)HARMEANReturns the harmonic mean, the reciprocal of the average of the reciprocals of the values.
HARMEAN(number1, ...)
=HARMEAN(B2:B10)HYPGEOM.DISTReturns the hypergeometric probability of a number of successes in a sample drawn without replacement.Excel 2010
HYPGEOM.DIST(sample_s, number_sample, population_s, number_pop, cumulative)
=HYPGEOM.DIST(1,4,8,20,TRUE)INTERCEPTReturns the point where the linear regression line crosses the y-axis.
INTERCEPT(known_ys, known_xs)
=INTERCEPT(B:B,A:A)KURTReturns the kurtosis of a data set, which measures how heavy or light its tails are compared with a normal distribution.
KURT(number1, ...)
=KURT(B2:B10)LARGEReturns the k-th largest value in a range.
LARGE(array, k)
=LARGE(B:B,2)→ Second-largest value in column BUse it for: Show the second-highest sale in a top-five list on a dashboard.
LINESTReturns an array of statistics for the least-squares straight line through the data, including the slope and intercept.
LINEST(known_ys, [known_xs], [const], [stats])
=LINEST(B:B,A:A)LOGESTReturns an array of statistics for an exponential curve fitted to the data.
LOGEST(known_ys, [known_xs], [const], [stats])
=LOGEST(B:B,A:A)LOGNORM.DISTReturns the lognormal distribution of x, as either a density or a cumulative probability.Excel 2010
LOGNORM.DIST(x, mean, standard_dev, cumulative)
=LOGNORM.DIST(4,3.5,1.2,TRUE)LOGNORM.INVReturns the inverse of the cumulative lognormal distribution for a given probability.Excel 2010
LOGNORM.INV(probability, mean, standard_dev)
=LOGNORM.INV(0.0390835,3.5,1.2)MAXReturns the largest value in a range.
MAX(number1, [number2], ...)
=MAX(B2:B13)→ Largest value in B2:B13Use it for: Find the month with the highest revenue or the largest expense in a year.
MAXAReturns the largest value, counting TRUE as 1 and both FALSE and text as 0.
MAXA(value1, [value2], ...)
=MAXA(A:A)MAXIFSReturns the largest value among cells that meet all of the specified criteria.Excel 2019
MAXIFS(max_range, criteria_range1, criteria1, ...)
=MAXIFS(C:C,A:A,"KL",B:B,"2026")Use it for: Find the highest sale in the Kuala Lumpur region for 2026.
MEDIANReturns the middle value of a set of numbers once they are sorted.
MEDIAN(number1, [number2], ...)
=MEDIAN(B:B)Use it for: Report a typical employee salary without distortion from a few very high salaries.
MINReturns the smallest value in a range.
MIN(number1, [number2], ...)
=MIN(B2:B13)→ Smallest value in B2:B13Use it for: Find the lowest share price over a period.
MINAReturns the smallest value, counting TRUE as 1 and both FALSE and text as 0.
MINA(value1, [value2], ...)
=MINA(A:A)MINIFSReturns the smallest value among cells that meet all of the specified criteria.Excel 2019
MINIFS(min_range, criteria_range1, criteria1, ...)
=MINIFS(C:C,A:A,"KL")MODE.MULTReturns a vertical array of the most frequently occurring values, including more than one mode when there are several.Excel 2010
MODE.MULT(number1, ...)
=MODE.MULT(B:B)MODE.SNGLReturns the single most frequently occurring value in a data set.Excel 2010
MODE.SNGL(number1, ...)
=MODE.SNGL(B:B)NEGBINOM.DISTReturns the negative binomial distribution, the probability of a given number of failures before a set number of successes.Excel 2010
NEGBINOM.DIST(number_f, number_s, probability_s, cumulative)
=NEGBINOM.DIST(10,5,0.25,TRUE)NORM.DISTReturns the normal distribution for a given mean and standard deviation, as either a density or a cumulative probability.Excel 2010
NORM.DIST(x, mean, standard_dev, cumulative)
=NORM.DIST(42,40,1.5,TRUE)NORM.INVReturns the inverse of the cumulative normal distribution for a given mean and standard deviation.Excel 2010
NORM.INV(probability, mean, standard_dev)
=NORM.INV(0.908789,40,1.5)NORM.S.DISTReturns the standard normal distribution (mean 0, standard deviation 1) for a z-score.Excel 2010
NORM.S.DIST(z, cumulative)
=NORM.S.DIST(1.333333,TRUE)NORM.S.INVReturns the z-score that corresponds to a given cumulative probability in the standard normal distribution.Excel 2010
NORM.S.INV(probability)
=NORM.S.INV(0.908789)PEARSONReturns the Pearson correlation coefficient of two ranges, the same result as CORREL.
PEARSON(array1, array2)
=PEARSON(A:A,B:B)PERCENTILE.EXCReturns the k-th percentile, where k is between 0 and 1, exclusive.Excel 2010
PERCENTILE.EXC(array, k)
=PERCENTILE.EXC(B:B,0.25)PERCENTILE.INCReturns the k-th percentile, where k is between 0 and 1, inclusive.Excel 2010
PERCENTILE.INC(array, k)
=PERCENTILE.INC(B:B,0.5)→ Median of column B (50th percentile)PERCENTRANK.EXCReturns the rank of a value as a percentage of the data set, from 0 to 1, exclusive.Excel 2010
PERCENTRANK.EXC(array, x, [significance])
=PERCENTRANK.EXC(A:A,A2)PERCENTRANK.INCReturns the rank of a value as a percentage of the data set, from 0 to 1, inclusive.Excel 2010
PERCENTRANK.INC(array, x, [significance])
=PERCENTRANK.INC(A:A,A2)PERMUTReturns the number of permutations for a given number of objects chosen from a set, without repetition.
PERMUT(number, number_chosen)
=PERMUT(100,3)PERMUTATIONAReturns the number of permutations for a given number of objects chosen from a set, with repetition allowed.Excel 2013
PERMUTATIONA(number, number_chosen)
=PERMUTATIONA(3,2)→ 9PHIReturns the value of the density function of the standard normal distribution at x.Excel 2013
PHI(x)
=PHI(0.75)POISSON.DISTReturns the Poisson distribution, the probability of a number of events in a fixed interval, either exact or cumulative.Excel 2010
POISSON.DIST(x, mean, cumulative)
=POISSON.DIST(2,5,TRUE)PROBReturns the probability that values in a range fall between a lower and an upper limit.
PROB(x_range, prob_range, [lower_limit], [upper_limit])
=PROB(A:A,B:B,1,3)QUARTILE.EXCReturns a quartile of a data set based on percentile values from 0 to 1, exclusive.Excel 2010
QUARTILE.EXC(array, quart)
=QUARTILE.EXC(A:A,1)QUARTILE.INCReturns a quartile of a data set based on percentile values from 0 to 1, inclusive.Excel 2010
QUARTILE.INC(array, quart)
=QUARTILE.INC(A:A,2)→ Median of column A (second quartile)RANK.AVGReturns the rank of a number in a list, giving tied values the average of their ranks.Excel 2010
RANK.AVG(number, ref, [order])
=RANK.AVG(B2,B:B,0)RANK.EQReturns the rank of a number in a list, giving tied values the same top rank.Excel 2010
RANK.EQ(number, ref, [order])
=RANK.EQ(B2,B:B,0)Use it for: Rank salespeople on a monthly sales leaderboard.
RSQReturns the square of the Pearson correlation coefficient (R-squared) for a regression line.
RSQ(known_ys, known_xs)
=RSQ(B:B,A:A)SKEWReturns the sample skewness, a measure of how asymmetric a distribution is around its mean.
SKEW(number1, ...)
=SKEW(B:B)SKEW.PReturns the population skewness, a measure of how asymmetric the distribution of an entire population is.Excel 2013
SKEW.P(number1, ...)
=SKEW.P(B:B)SLOPEReturns the slope of the linear regression line.
SLOPE(known_ys, known_xs)
=SLOPE(B:B,A:A)SMALLReturns the k-th smallest value in a range.
SMALL(array, k)
=SMALL(B:B,2)→ Second-smallest value in column BSTANDARDIZEReturns the z-score of x based on a given mean and standard deviation.
STANDARDIZE(x, mean, standard_dev)
=STANDARDIZE(42,40,1.5)STDEV.PReturns the standard deviation of an entire population, dividing by n.Excel 2010
STDEV.P(number1, ...)
=STDEV.P(B:B)STDEV.SEstimates the standard deviation from a sample, dividing by n-1.Excel 2010
STDEV.S(number1, ...)
=STDEV.S(B:B)Use it for: Measure how much daily delivery times vary around their average.
STDEVAEstimates the standard deviation from a sample, counting TRUE as 1 and both FALSE and text as 0.
STDEVA(value1, ...)
=STDEVA(A:A)STDEVPAReturns the standard deviation of an entire population, counting TRUE as 1 and both FALSE and text as 0.
STDEVPA(value1, ...)
=STDEVPA(A:A)STEYXReturns the standard error of the predicted y-value for each x in a linear regression.
STEYX(known_ys, known_xs)
=STEYX(B:B,A:A)T.DISTReturns the left-tailed Student's t distribution, as either a density or a cumulative probability.Excel 2010
T.DIST(x, deg_freedom, cumulative)
=T.DIST(60,1,TRUE)T.DIST.2TReturns the two-tailed probability of Student's t distribution.Excel 2010
T.DIST.2T(x, deg_freedom)
=T.DIST.2T(1.96,60)T.DIST.RTReturns the right-tailed probability of Student's t distribution.Excel 2010
T.DIST.RT(x, deg_freedom)
=T.DIST.RT(1.96,60)T.INVReturns the left-tailed inverse of Student's t distribution.Excel 2010
T.INV(probability, deg_freedom)
=T.INV(0.75,2)T.INV.2TReturns the two-tailed inverse of Student's t distribution.Excel 2010
T.INV.2T(probability, deg_freedom)
=T.INV.2T(0.546449,60)T.TESTReturns the p-value of a Student's t-test, used to judge whether the means of two samples differ significantly.Excel 2010
T.TEST(array1, array2, tails, type)
=T.TEST(A:A,B:B,2,1)TRENDPredicts values along a linear regression line fitted to existing data.
TREND(known_ys, [known_xs], [new_xs], [const])
=TREND(B2:B10,A2:A10)TRIMMEANReturns the mean after excluding a given percentage of values from the top and bottom of a data set.
TRIMMEAN(array, percent)
=TRIMMEAN(A:A,0.2)Use it for: Average judges' scores after dropping the extreme high and low marks.
VAR.PReturns the variance of an entire population, dividing by n.Excel 2010
VAR.P(number1, ...)
=VAR.P(B:B)VAR.SEstimates the variance from a sample, dividing by n-1.Excel 2010
VAR.S(number1, ...)
=VAR.S(B:B)VARAEstimates the variance from a sample, counting TRUE as 1 and both FALSE and text as 0.
VARA(value1, ...)
=VARA(A:A)VARPAReturns the variance of an entire population, counting TRUE as 1 and both FALSE and text as 0.
VARPA(value1, ...)
=VARPA(A:A)WEIBULL.DISTReturns the Weibull distribution, often used in reliability analysis.Excel 2010
WEIBULL.DIST(x, alpha, beta, cumulative)
=WEIBULL.DIST(105,20,100,TRUE)Z.TESTReturns the one-tailed p-value of a z-test against a hypothesized mean.Excel 2010
Z.TEST(array, x, [sigma])
=Z.TEST(A:A,4)Text36
ARRAYTOTEXTReturns an array or range as a single text string, in either a concise format or a strict format that can be entered back as a formula.Microsoft 365
ARRAYTOTEXT(array, [format])
=ARRAYTOTEXT(A1:B2)ASCChanges full-width (double-byte) characters to half-width (single-byte) characters for languages that use double-byte character sets.
ASC(text)
=ASC("ABC")BAHTTEXTConverts a number to Thai text and adds the word "Baht".
BAHTTEXT(number)
=BAHTTEXT(1234)CHARReturns the character for a code number from 1 to 255 in your computer's character set.
CHAR(number)
=CHAR(65)→ "A"CLEANRemoves nonprintable characters (codes 0 to 31) from text.
CLEAN(text)
=CLEAN(A2)Use it for: Cleaning text imported from another system before analysis.
CODEReturns the code number of the first character in a text string.
CODE(text)
=CODE("A")→ 65CONCATJoins text from multiple values or ranges into one string and replaces CONCATENATE.Excel 2019
CONCAT(text1, [text2], ...)
=CONCAT(A1:A10)Use it for: Combining a branch code, year, and serial number into a single reference number.
CONCATENATEJoins several text values into one string and has been superseded by CONCAT or the & operator.
CONCATENATE(text1, [text2], ...)
=CONCATENATE(A2," ",B2)DBCSChanges half-width (single-byte) characters to full-width (double-byte) characters.Excel 2013
DBCS(text)
=DBCS("ABC")DOLLARConverts a number to text in currency format, using the currency symbol from your system's regional settings.
DOLLAR(number, [decimals])
=DOLLAR(1234.567,2)→ "$1,234.57"EXACTCompares two text strings, taking letter case into account, and returns TRUE only if they are exactly the same.
EXACT(text1, text2)
=EXACT("ABC","abc")→ FALSEFINDReturns the starting position of one text string within another, matching letter case and without wildcard support.
FIND(find_text, within_text, [start_num])
=FIND("@","ali@gmail.com")→ 4FIXEDRounds a number to a specified number of decimal places and returns it as text, with or without thousands separators.
FIXED(number, [decimals], [no_commas])
=FIXED(1234.567,1)→ "1,234.6"LEFTReturns a specified number of characters from the start (left) of a text string.
LEFT(text, [num_chars])
=LEFT(A2,3)→ First 3 characters of A2Use it for: Extracting a three-letter prefix from a product code.
LENReturns the number of characters in a text string, including spaces.
LEN(text)
=LEN(A2)Use it for: Checking that every ID number in a list has exactly 12 digits.
LOWERConverts all letters in a text string to lowercase.
LOWER(text)
=LOWER(A2)Use it for: Standardizing email addresses before comparing them or removing duplicates.
MIDReturns a specified number of characters from the middle of a text string, starting at the position you give.
MID(text, start_num, num_chars)
=MID(A2,4,3)Use it for: Extracting a fixed segment, such as a region code, from a structured ID or account number.
NUMBERVALUEConverts text to a number using the decimal and group separators you specify, independent of regional settings.Excel 2013
NUMBERVALUE(text, [decimal_separator], [group_separator])
=NUMBERVALUE("1.234,56",",",".")PROPERCapitalizes the first letter of each word and converts the remaining letters to lowercase.
PROPER(text)
=PROPER("ali baba")→ "Ali Baba"Use it for: Tidying customer names that were typed in all capitals or all lowercase.
REPLACEReplaces part of a text string, identified by position and number of characters, with new text.
REPLACE(old_text, start_num, num_chars, new_text)
=REPLACE(A2,1,3,"XXX")REPTRepeats text a specified number of times.
REPT(text, number_times)
=REPT("|",B2/1000)→ "|||||" when B2 is 5000Use it for: Drawing a simple bar chart inside a cell, e.g. one bar for every RM1,000 of sales.
RIGHTReturns a specified number of characters from the end (right) of a text string.
RIGHT(text, [num_chars])
=RIGHT(A2,4)→ Last 4 characters of A2SEARCHReturns the starting position of one text string within another, ignoring letter case and supporting wildcards.
SEARCH(find_text, within_text, [start_num])
=SEARCH("@",A2)SUBSTITUTEReplaces specific text with new text, either every occurrence or only the occurrence you specify.
SUBSTITUTE(text, old_text, new_text, [instance_num])
=SUBSTITUTE(A2,"-","")Use it for: Removing dashes from phone numbers.
TReturns the value if it is text, and empty text if it is not.
T(value)
=T(A2)TEXTConverts a value to text in a number format you specify, such as currency, percentage, or date.
TEXT(value, format_text)
=TEXT(0.25,"0.0%")→ "25.0%"Use it for: Showing a KPI inside a sentence on a dashboard, such as "Sales up 25.0%".
TEXTAFTERReturns the text that appears after a given delimiter.Microsoft 365
TEXTAFTER(text, delimiter, [instance_num], ...)
=TEXTAFTER("ali@gmail.com","@")→ "gmail.com"TEXTBEFOREReturns the text that appears before a given delimiter.Microsoft 365
TEXTBEFORE(text, delimiter, [instance_num], ...)
=TEXTBEFORE("ali@gmail.com","@")→ "ali"TEXTJOINJoins text from multiple values or ranges with a delimiter between them and can skip empty cells.Excel 2019
TEXTJOIN(delimiter, ignore_empty, text1, ...)
=TEXTJOIN(",",TRUE,A:A)Use it for: Combining a column of names into a single comma-separated line.
TEXTSPLITSplits text into columns, rows, or both, using the delimiters you specify.Microsoft 365
TEXTSPLIT(text, col_delimiter, [row_delimiter], ...)
=TEXTSPLIT("a,b,c",",")TRIMRemoves spaces from the start and end of text and reduces repeated spaces between words to a single space.
TRIM(text)
=TRIM(A2)Use it for: Cleaning imported CSV data before a VLOOKUP so that hidden spaces do not cause failed matches.
UNICHARReturns the Unicode character for a given code number.Excel 2013
UNICHAR(number)
=UNICHAR(8364)→ "€"UNICODEReturns the Unicode code number of the first character in a text string.Excel 2013
UNICODE(text)
=UNICODE("€")→ 8364UPPERConverts all letters in a text string to uppercase.
UPPER(text)
=UPPER(A2)Use it for: Standardizing product or branch codes so they are all in capitals.
VALUEConverts text that represents a number into a numeric value.
VALUE(text)
=VALUE("1234")→ 1234Use it for: Fixing numbers stored as text so they can be added up.
VALUETOTEXTReturns any value as text, in either a concise or a strict format.Microsoft 365
VALUETOTEXT(value, [format])
=VALUETOTEXT(A2)Date and time25
DATEReturns the serial number of a date built from separate year, month, and day values.
DATE(year, month, day)
=DATE(2026,5,15)→ 15/05/2026Use it for: Building a full date from separate year, month, and day columns.
DATEDIFReturns the difference between two dates in years, months, or days, based on the unit you choose (Y, M, D, MD, YM, or YD).
DATEDIF(start_date, end_date, unit)
=DATEDIF(A2,TODAY(),"Y")→ Age in completed yearsUse it for: Calculating an employee's age or length of service in complete years.
DATEVALUEConverts a date stored as text into a date serial number.
DATEVALUE(date_text)
=DATEVALUE("15/5/2026")DAYReturns the day of the month (1 to 31) for a date.
DAY(serial_number)
=DAY(A2)DAYSReturns the number of days between two dates, with the end date as the first argument.Excel 2013
DAYS(end_date, start_date)
=DAYS(B2,A2)Use it for: Counting how many days an invoice has been outstanding.
DAYS360Returns the number of days between two dates based on a 360-day year (12 months of 30 days), as used in some accounting calculations.
DAYS360(start_date, end_date, [method])
=DAYS360(A2,B2)EDATEReturns the serial number of the date that falls a given number of months before or after a start date.
EDATE(start_date, months)
=EDATE(TODAY(),3)→ The date three months after todayUse it for: Calculating the end date of a subscription or contract from its length in months.
EOMONTHReturns the last day of the month that is a given number of months before or after a start date.
EOMONTH(start_date, months)
=EOMONTH(TODAY(),0)→ Last day of the current monthUse it for: Finding the month-end closing date for monthly reports.
HOURReturns the hour (0 to 23) of a time value.
HOUR(serial_number)
=HOUR(NOW())ISOWEEKNUMReturns the ISO 8601 week number of a date, with weeks starting on Monday.Excel 2013
ISOWEEKNUM(date)
=ISOWEEKNUM(TODAY())MINUTEReturns the minute (0 to 59) of a time value.
MINUTE(serial_number)
=MINUTE(NOW())MONTHReturns the month (1 to 12) of a date.
MONTH(serial_number)
=MONTH(A2)Use it for: Grouping transactions by month for a monthly sales summary.
NETWORKDAYSReturns the number of working days between two dates, excluding Saturdays, Sundays, and any listed holidays.
NETWORKDAYS(start_date, end_date, [holidays])
=NETWORKDAYS(A2,B2)Use it for: Counting the working days available to complete a project.
NETWORKDAYS.INTLReturns the number of working days between two dates using the weekend days you specify, excluding any listed holidays.Excel 2010
NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays])
=NETWORKDAYS.INTL(A2,B2,11)NOWReturns the current date and time, which updates each time the worksheet recalculates.
NOW()
=NOW()→ 15/5/2026 14:30Use it for: Showing the current date and time on a printed report.
SECONDReturns the second (0 to 59) of a time value.
SECOND(serial_number)
=SECOND(NOW())TIMEReturns the decimal number for a time built from hour, minute, and second values.
TIME(hour, minute, second)
=TIME(14,30,0)→ 2:30 PMTIMEVALUEConverts a time stored as text into the decimal number that represents it.
TIMEVALUE(time_text)
=TIMEVALUE("2:30 PM")TODAYReturns today's date, which updates whenever the workbook is opened or recalculated.
TODAY()
=TODAY()Use it for: Calculating how many days a payment is overdue as of today.
WEEKDAYReturns the day of the week for a date as a number, with the numbering scheme set by return_type.
WEEKDAY(serial_number, [return_type])
=WEEKDAY(TODAY(),2)→ 1 = Monday through 7 = SundayUse it for: Checking whether a booking date falls on a weekday or a weekend.
WEEKNUMReturns the week number of the year (1 to 54) for a date.
WEEKNUM(serial_number, [return_type])
=WEEKNUM(TODAY())WORKDAYReturns the date that falls a given number of working days before or after a start date, excluding weekends and any listed holidays.
WORKDAY(start_date, days, [holidays])
=WORKDAY(TODAY(),10)Use it for: Setting a project deadline 10 working days from today.
WORKDAY.INTLReturns the date that falls a given number of working days before or after a start date, using the weekend days you specify and excluding any listed holidays.Excel 2010
WORKDAY.INTL(start_date, days, [weekend], [holidays])
=WORKDAY.INTL(A2,10,11)YEARReturns the year of a date.
YEAR(serial_number)
=YEAR(A2)Use it for: Grouping sales data by year.
YEARFRACReturns the fraction of a year represented by the days between two dates, using the day-count basis you choose.
YEARFRAC(start_date, end_date, [basis])
=YEARFRAC(A2,TODAY())Use it for: Prorating a bonus or annual leave for an employee who has served less than a full year.
Financial56
ACCRINTReturns the accrued interest for a security that pays periodic interest.
ACCRINT(issue, first_interest, settlement, rate, par, frequency, [basis], [calc_method])
=ACCRINT(...)ACCRINTMReturns the accrued interest for a security that pays all of its interest at maturity.
ACCRINTM(issue, settlement, rate, par, [basis])
=ACCRINTM(...)AMORDEGRCReturns the depreciation for each accounting period using a depreciation coefficient, as used in the French accounting system.
AMORDEGRC(cost, date_purchased, first_period, salvage, period, rate, [basis])
=AMORDEGRC(...)AMORLINCReturns the prorated straight-line depreciation for each accounting period, as used in the French accounting system.
AMORLINC(cost, date_purchased, first_period, salvage, period, rate, [basis])
=AMORLINC(...)COUPDAYBSReturns the number of days from the start of the coupon period to the settlement date.
COUPDAYBS(settlement, maturity, frequency, [basis])
=COUPDAYBS(...)COUPDAYSReturns the number of days in the coupon period that contains the settlement date.
COUPDAYS(settlement, maturity, frequency, [basis])
=COUPDAYS(...)COUPDAYSNCReturns the number of days from the settlement date to the next coupon date.
COUPDAYSNC(settlement, maturity, frequency, [basis])
=COUPDAYSNC(...)COUPNCDReturns the first coupon date after the settlement date.
COUPNCD(settlement, maturity, frequency, [basis])
=COUPNCD(...)COUPNUMReturns the number of coupons payable between the settlement date and the maturity date.
COUPNUM(settlement, maturity, frequency, [basis])
=COUPNUM(...)COUPPCDReturns the last coupon date before the settlement date.
COUPPCD(settlement, maturity, frequency, [basis])
=COUPPCD(...)CUMIPMTReturns the total interest paid on a loan between a start period and an end period.
CUMIPMT(rate, nper, pv, start_period, end_period, type)
=CUMIPMT(0.05/12,360,200000,1,12,0)CUMPRINCReturns the total principal repaid on a loan between a start period and an end period.
CUMPRINC(rate, nper, pv, start_period, end_period, type)
=CUMPRINC(0.05/12,360,200000,1,12,0)DBReturns the depreciation of an asset for a given period using the fixed-declining balance method.
DB(cost, salvage, life, period, [month])
=DB(10000,1000,5,1)DDBReturns the depreciation of an asset for a given period using the double-declining balance method or another factor you specify.
DDB(cost, salvage, life, period, [factor])
=DDB(10000,1000,5,1)DISCReturns the discount rate for a security.
DISC(settlement, maturity, pr, redemption, [basis])
=DISC(...)DOLLARDEConverts a price written in fractional notation (for example, 1.02 with a fraction of 16 means 1 and 2/16) into a decimal number.
DOLLARDE(fractional_dollar, fraction)
=DOLLARDE(1.02,16)DOLLARFRConverts a decimal price into fractional notation, for example 1.125 becomes 1.02 with a fraction of 16.
DOLLARFR(decimal_dollar, fraction)
=DOLLARFR(1.125,16)DURATIONReturns the Macaulay duration of a security that pays periodic interest, assuming a face value of 100.
DURATION(settlement, maturity, coupon, yld, frequency, [basis])
=DURATION(...)EFFECTReturns the effective annual interest rate from a nominal rate and the number of compounding periods per year.
EFFECT(nominal_rate, npery)
=EFFECT(0.0525,4)→ ≈ 5.35%FVReturns the future value of an investment based on constant periodic payments and a constant interest rate.
FV(rate, nper, pmt, [pv], [type])
=FV(6%/12,240,-500)→ ≈ 231,020 (saving 500 a month for 20 years at 6% a year)Use it for: Estimate a retirement savings balance after putting away the same amount every month.
FVSCHEDULEReturns the future value of an initial principal after applying a series of compound interest rates.
FVSCHEDULE(principal, schedule)
=FVSCHEDULE(1000,{0.03,0.04,0.05})INTRATEReturns the interest rate for a fully invested security.
INTRATE(settlement, maturity, investment, redemption, [basis])
=INTRATE(...)IPMTReturns the interest portion of a loan payment for a given period.
IPMT(rate, per, nper, pv, [fv], [type])
=IPMT(5%/12,1,360,200000)IRRReturns the internal rate of return for a series of cash flows that occur at regular intervals.
IRR(values, [guess])
=IRR(A1:A6)Use it for: Compare the returns of several investment projects from their yearly cash flows.
ISPMTReturns the interest paid in a specific period of a loan that is repaid in equal principal installments.
ISPMT(rate, per, nper, pv)
=ISPMT(5%/12,1,360,200000)MDURATIONReturns the modified Macaulay duration of a security, assuming a face value of 100.
MDURATION(settlement, maturity, coupon, yld, frequency, [basis])
=MDURATION(...)MIRRReturns the modified internal rate of return, which accounts for both the cost of financing and the rate earned on reinvested cash.
MIRR(values, finance_rate, reinvest_rate)
=MIRR(A1:A6,5%,3%)NOMINALReturns the nominal annual interest rate from an effective rate and the number of compounding periods per year.
NOMINAL(effect_rate, npery)
=NOMINAL(0.053543,4)→ ≈ 5.25%NPERReturns the number of periods for an investment or loan based on constant periodic payments and a constant interest rate.
NPER(rate, pmt, pv, [fv], [type])
=NPER(5%/12,-500,200000)Use it for: Work out how many months it takes to pay off a loan with a fixed monthly installment.
NPVReturns the net present value of an investment from a discount rate and a series of future cash flows.
NPV(rate, value1, [value2], ...)
=NPV(10%,-10000,3000,4500,6000)Use it for: Check whether a capital project returns more than its cost of capital before approving it.
ODDFPRICEReturns the price per 100 of face value for a security with an odd (short or long) first period.
ODDFPRICE(...)
=ODDFPRICE(...)ODDFYIELDReturns the yield of a security with an odd (short or long) first period.
ODDFYIELD(...)
=ODDFYIELD(...)ODDLPRICEReturns the price per 100 of face value for a security with an odd (short or long) last period.
ODDLPRICE(...)
=ODDLPRICE(...)ODDLYIELDReturns the yield of a security with an odd (short or long) last period.
ODDLYIELD(...)
=ODDLYIELD(...)PDURATIONReturns the number of periods an investment needs to reach a target value.Excel 2013
PDURATION(rate, pv, fv)
=PDURATION(0.025,2000,2200)PMTReturns the periodic payment for a loan based on constant payments and a constant interest rate; divide an annual rate by 12 for monthly payments.
PMT(rate, nper, pv, [fv], [type])
=PMT(5%/12,36,50000)→ ≈ -1,498.54 (monthly payment on a 50,000 loan over 3 years at 5% a year)Use it for: Calculate the monthly installment on a car loan or home loan.
PPMTReturns the principal portion of a loan payment for a given period.
PPMT(rate, per, nper, pv, [fv], [type])
=PPMT(5%/12,1,360,200000)PRICEReturns the price per 100 of face value for a security that pays periodic interest.
PRICE(settlement, maturity, rate, yld, redemption, frequency, [basis])
=PRICE(...)PRICEDISCReturns the price per 100 of face value for a discounted security.
PRICEDISC(settlement, maturity, discount, redemption, [basis])
=PRICEDISC(...)PRICEMATReturns the price per 100 of face value for a security that pays interest at maturity.
PRICEMAT(settlement, maturity, issue, rate, yld, [basis])
=PRICEMAT(...)PVReturns the present value of an investment, which is what a series of future payments is worth today.
PV(rate, nper, pmt, [fv], [type])
=PV(5%/12,60,-1000)Use it for: Find what an annuity that pays a fixed monthly amount is worth today.
RATEReturns the interest rate per period of an annuity or loan.
RATE(nper, pmt, pv, [fv], [type], [guess])
=RATE(48,-200,8000)*12Use it for: Find the actual annual rate of a loan when you only know the monthly installment and the amount borrowed.
RECEIVEDReturns the amount received at maturity for a fully invested security.
RECEIVED(settlement, maturity, investment, discount, [basis])
=RECEIVED(...)RRIReturns an equivalent interest rate for the growth of an investment from a present value to a future value.Excel 2013
RRI(nper, pv, fv)
=RRI(8,10000,11000)SLNReturns the straight-line depreciation of an asset for one period.
SLN(cost, salvage, life)
=SLN(30000,7500,10)→ 2,250 per yearSTOCKHISTORYReturns historical price data for a stock or other financial instrument from a Microsoft data source.Microsoft 365
STOCKHISTORY(stock, start_date, [end_date], [interval], [headers], [properties]...)
=STOCKHISTORY("MSFT","1/1/2024")SYDReturns the sum-of-years' digits depreciation of an asset for a given period.
SYD(cost, salvage, life, per)
=SYD(30000,7500,10,1)TBILLEQReturns the bond-equivalent yield for a Treasury bill.
TBILLEQ(settlement, maturity, discount)
=TBILLEQ(...)TBILLPRICEReturns the price per 100 of face value for a Treasury bill.
TBILLPRICE(settlement, maturity, discount)
=TBILLPRICE(...)TBILLYIELDReturns the yield for a Treasury bill.
TBILLYIELD(settlement, maturity, pr)
=TBILLYIELD(...)VDBReturns the depreciation of an asset for any period you specify, including partial periods, using the double-declining balance method or another factor.
VDB(cost, salvage, life, start_period, end_period, [factor], [no_switch])
=VDB(2400,300,3650,0,1)XIRRReturns the internal rate of return for cash flows that occur on irregular dates.
XIRR(values, dates, [guess])
=XIRR(A1:A5,B1:B5)Use it for: Measure the actual return on an investment with deposits and withdrawals on different dates.
XNPVReturns the net present value of cash flows that occur on irregular dates.
XNPV(rate, values, dates)
=XNPV(0.09,A1:A5,B1:B5)YIELDReturns the yield of a security that pays periodic interest.
YIELD(settlement, maturity, rate, pr, redemption, frequency, [basis])
=YIELD(...)YIELDDISCReturns the annual yield of a discounted security.
YIELDDISC(settlement, maturity, pr, redemption, [basis])
=YIELDDISC(...)YIELDMATReturns the annual yield of a security that pays interest at maturity.
YIELDMAT(settlement, maturity, issue, rate, pr, [basis])
=YIELDMAT(...)Information21
CELLReturns information about a cell's formatting, location, or contents, depending on the info type requested.
CELL(info_type, [reference])
=CELL("address",A1)→ "$A$1"ERROR.TYPEReturns a number that identifies the error type (1 = #NULL!, 2 = #DIV/0!, and so on), or #N/A if there is no error.
ERROR.TYPE(error_val)
=ERROR.TYPE(A1)INFOReturns information about the current operating environment, such as the operating system or the number of active worksheets.
INFO(type_text)
=INFO("system")→ "pcdos"/"mac"ISBLANKReturns TRUE if a cell is empty.
ISBLANK(value)
=ISBLANK(A1)Use it for: Check whether the required fields in a registration form have been filled in.
ISERRReturns TRUE if a value is any error except #N/A.
ISERR(value)
=ISERR(A1/B1)ISERRORReturns TRUE if a value is any type of error, including #N/A.
ISERROR(value)
=ISERROR(VLOOKUP(...))Use it for: Detect failing formulas so you can show a clear message instead of an error.
ISEVENReturns TRUE if a number is even.
ISEVEN(number)
=ISEVEN(4)→ TRUEISFORMULAReturns TRUE if the referenced cell contains a formula.Excel 2013
ISFORMULA(reference)
=ISFORMULA(B2)ISLOGICALReturns TRUE if a value is a logical value (TRUE or FALSE).
ISLOGICAL(value)
=ISLOGICAL(A1)ISNAReturns TRUE if a value is the #N/A error.
ISNA(value)
=ISNA(VLOOKUP(...))ISNONTEXTReturns TRUE if a value is not text, including an empty cell.
ISNONTEXT(value)
=ISNONTEXT(A1)ISNUMBERReturns TRUE if a value is a number.
ISNUMBER(value)
=ISNUMBER(A1)Use it for: Make sure a price column contains only numbers before you total it.
ISODDReturns TRUE if a number is odd.
ISODD(number)
=ISODD(7)→ TRUEISOMITTEDReturns TRUE if an argument in a LAMBDA function was omitted.Microsoft 365
ISOMITTED(argument)
=LAMBDA(x,IF(ISOMITTED(x),0,x))ISREFReturns TRUE if a value is a cell or range reference.
ISREF(value)
=ISREF(A1)ISTEXTReturns TRUE if a value is text.
ISTEXT(value)
=ISTEXT(A1)NConverts a value to a number: numbers stay as they are, dates become serial numbers, TRUE becomes 1, errors are returned unchanged, and anything else becomes 0.
N(value)
=N("text")NAReturns the #N/A error on purpose, for example to mark data that is not yet available.
NA()
=NA()SHEETReturns the sheet number of the referenced sheet, or of the current sheet if no argument is given.Excel 2013
SHEET([value])
=SHEET()SHEETSReturns the number of sheets in a reference, or in the whole workbook if no argument is given.Excel 2013
SHEETS([reference])
=SHEETS()TYPEReturns a code for the type of a value: 1 number, 2 text, 4 logical value, 16 error, 64 array, 128 compound data.
TYPE(value)
=TYPE(A1)Engineering54
BESSELIReturns the modified Bessel function In(x).
BESSELI(x, n)
=BESSELI(1.5,1)BESSELJReturns the Bessel function Jn(x).
BESSELJ(x, n)
=BESSELJ(1.9,2)BESSELKReturns the modified Bessel function Kn(x).
BESSELK(x, n)
=BESSELK(1.5,1)BESSELYReturns the Bessel function Yn(x), also known as the Weber or Neumann function.
BESSELY(x, n)
=BESSELY(2.5,1)BIN2DECConverts a binary number to decimal.
BIN2DEC(number)
=BIN2DEC("1010")→ 10BIN2HEXConverts a binary number to hexadecimal.
BIN2HEX(number, [places])
=BIN2HEX("11111011")→ "FB"BIN2OCTConverts a binary number to octal.
BIN2OCT(number, [places])
=BIN2OCT("1001")→ "11"BITANDReturns the bitwise AND of two numbers.Excel 2013
BITAND(number1, number2)
=BITAND(13,25)→ 9BITLSHIFTReturns a number with its bits shifted left by the given number of positions.Excel 2013
BITLSHIFT(number, shift_amount)
=BITLSHIFT(4,2)→ 16BITORReturns the bitwise OR of two numbers.Excel 2013
BITOR(number1, number2)
=BITOR(23,10)→ 31BITRSHIFTReturns a number with its bits shifted right by the given number of positions.Excel 2013
BITRSHIFT(number, shift_amount)
=BITRSHIFT(13,2)→ 3BITXORReturns the bitwise XOR (exclusive OR) of two numbers.Excel 2013
BITXOR(number1, number2)
=BITXOR(5,3)→ 6COMPLEXConverts real and imaginary coefficients into a complex number as text in the form x+yi or x+yj.
COMPLEX(real_num, i_num, [suffix])
=COMPLEX(3,4)→ "3+4i"CONVERTConverts a number from one unit of measurement to another.
CONVERT(number, from_unit, to_unit)
=CONVERT(100,"km","mi")→ ≈ 62.14 milesDEC2BINConverts a decimal number to binary.
DEC2BIN(number, [places])
=DEC2BIN(10)→ "1010"DEC2HEXConverts a decimal number to hexadecimal.
DEC2HEX(number, [places])
=DEC2HEX(255)→ "FF"DEC2OCTConverts a decimal number to octal.
DEC2OCT(number, [places])
=DEC2OCT(8)→ "10"DELTATests whether two values are equal and returns 1 if they are or 0 if they are not.
DELTA(number1, [number2])
=DELTA(5,5)→ 1ERFReturns the error function integrated between the lower and upper limits, or between 0 and the lower limit when the upper limit is omitted.
ERF(lower_limit, [upper_limit])
=ERF(0.74500)ERF.PRECISEReturns the error function integrated between 0 and x.Excel 2010
ERF.PRECISE(x)
=ERF.PRECISE(0.74500)ERFCReturns the complementary error function integrated between x and infinity.
ERFC(x)
=ERFC(1)ERFC.PRECISEReturns the complementary error function integrated between x and infinity.Excel 2010
ERFC.PRECISE(x)
=ERFC.PRECISE(1)GESTEPReturns 1 if a number is greater than or equal to the step value, otherwise 0.
GESTEP(number, [step])
=GESTEP(5,4)→ 1HEX2BINConverts a hexadecimal number to binary.
HEX2BIN(number, [places])
=HEX2BIN("F",8)→ "00001111"HEX2DECConverts a hexadecimal number to decimal.
HEX2DEC(number)
=HEX2DEC("A5")→ 165HEX2OCTConverts a hexadecimal number to octal.
HEX2OCT(number, [places])
=HEX2OCT("F",3)→ "017"IMABSReturns the absolute value (modulus) of a complex number.
IMABS(inumber)
=IMABS("5+12i")→ 13IMAGINARYReturns the imaginary coefficient of a complex number.
IMAGINARY(inumber)
=IMAGINARY("3+4i")→ 4IMARGUMENTReturns the argument theta of a complex number, an angle in radians.
IMARGUMENT(inumber)
=IMARGUMENT("3+4i")IMCONJUGATEReturns the conjugate of a complex number.
IMCONJUGATE(inumber)
=IMCONJUGATE("3+4i")→ "3-4i"IMCOSReturns the cosine of a complex number.
IMCOS(inumber)
=IMCOS("1+i")IMCOSHReturns the hyperbolic cosine of a complex number.Excel 2013
IMCOSH(inumber)
=IMCOSH("4+3i")IMCOTReturns the cotangent of a complex number.Excel 2013
IMCOT(inumber)
=IMCOT("4+3i")IMCSCReturns the cosecant of a complex number.Excel 2013
IMCSC(inumber)
=IMCSC("4+3i")IMCSCHReturns the hyperbolic cosecant of a complex number.Excel 2013
IMCSCH(inumber)
=IMCSCH("4+3i")IMDIVReturns the quotient of two complex numbers.
IMDIV(inumber1, inumber2)
=IMDIV("-238+240i","10+24i")IMEXPReturns the exponential of a complex number.
IMEXP(inumber)
=IMEXP("1+i")IMLNReturns the natural logarithm of a complex number.
IMLN(inumber)
=IMLN("3+4i")IMLOG10Returns the base-10 logarithm of a complex number.
IMLOG10(inumber)
=IMLOG10("3+4i")IMLOG2Returns the base-2 logarithm of a complex number.
IMLOG2(inumber)
=IMLOG2("3+4i")IMPOWERReturns a complex number raised to a given exponent, which can be an integer, a fraction, or a negative number.
IMPOWER(inumber, number)
=IMPOWER("2+3i",3)IMPRODUCTReturns the product of complex numbers.
IMPRODUCT(inumber1, ...)
=IMPRODUCT("3+4i","5-3i")IMREALReturns the real coefficient of a complex number.
IMREAL(inumber)
=IMREAL("6-9i")→ 6IMSECReturns the secant of a complex number.Excel 2013
IMSEC(inumber)
=IMSEC("4+3i")IMSECHReturns the hyperbolic secant of a complex number.Excel 2013
IMSECH(inumber)
=IMSECH("4+3i")IMSINReturns the sine of a complex number.
IMSIN(inumber)
=IMSIN("3+4i")IMSINHReturns the hyperbolic sine of a complex number.Excel 2013
IMSINH(inumber)
=IMSINH("4+3i")IMSQRTReturns the square root of a complex number.
IMSQRT(inumber)
=IMSQRT("1+i")IMSUBReturns the difference between two complex numbers.
IMSUB(inumber1, inumber2)
=IMSUB("13+4i","5+3i")IMSUMReturns the sum of complex numbers.
IMSUM(inumber1, ...)
=IMSUM("3+4i","5-3i")IMTANReturns the tangent of a complex number.Excel 2013
IMTAN(inumber)
=IMTAN("4+3i")OCT2BINConverts a octal number to binary.
OCT2BIN(number, [places])
=OCT2BIN("3",3)→ "011"OCT2DECConverts a octal number to decimal.
OCT2DEC(number)
=OCT2DEC("54")→ 44OCT2HEXConverts a octal number to hexadecimal.
OCT2HEX(number, [places])
=OCT2HEX("100",4)→ "0040"Database12
DAVERAGEReturns the average of the values in a field for database records that match the criteria.
DAVERAGE(database, field, criteria)
=DAVERAGE(A1:E20,"Sales",G1:G2)DCOUNTCounts the cells that contain numbers in a field for database records that match the criteria.
DCOUNT(database, field, criteria)
=DCOUNT(A1:E20,"Sales",G1:G2)DCOUNTACounts the non-empty cells in a field for database records that match the criteria.
DCOUNTA(database, field, criteria)
=DCOUNTA(A1:E20,"Name",G1:G2)DGETReturns a single value from a field for the one record that matches the criteria, or an error if no record or more than one record matches.
DGET(database, field, criteria)
=DGET(A1:E20,"Email",G1:G2)DMAXReturns the largest value in a field for database records that match the criteria.
DMAX(database, field, criteria)
=DMAX(A1:E20,"Sales",G1:G2)DMINReturns the smallest value in a field for database records that match the criteria.
DMIN(database, field, criteria)
=DMIN(A1:E20,"Sales",G1:G2)DPRODUCTMultiplies the values in a field for database records that match the criteria.
DPRODUCT(database, field, criteria)
=DPRODUCT(A1:E20,"Qty",G1:G2)DSTDEVEstimates the standard deviation from a sample, using the values in a field for records that match the criteria.
DSTDEV(database, field, criteria)
=DSTDEV(A1:E20,"Score",G1:G2)DSTDEVPReturns the population standard deviation of the values in a field for records that match the criteria.
DSTDEVP(database, field, criteria)
=DSTDEVP(A1:E20,"Score",G1:G2)DSUMReturns the sum of the values in a field for database records that match the criteria.
DSUM(database, field, criteria)
=DSUM(A1:E20,"Sales",G1:G2)DVAREstimates the variance from a sample, using the values in a field for records that match the criteria.
DVAR(database, field, criteria)
=DVAR(A1:E20,"Score",G1:G2)DVARPReturns the population variance of the values in a field for records that match the criteria.
DVARP(database, field, criteria)
=DVARP(A1:E20,"Score",G1:G2)Cube7
CUBEKPIMEMBERReturns a KPI property, such as value, goal, or status, from a cube and displays the KPI name in the cell.
CUBEKPIMEMBER(connection, kpi_name, kpi_property, [caption])
=CUBEKPIMEMBER("Sales","KPI",1)CUBEMEMBERReturns a member or tuple from a cube hierarchy, if it exists.
CUBEMEMBER(connection, member_expression, [caption])
=CUBEMEMBER("Sales","[Product].[All]")CUBEMEMBERPROPERTYReturns the value of a property for a member in a cube.
CUBEMEMBERPROPERTY(connection, member_expression, property)
=CUBEMEMBERPROPERTY("Sales","[Product]","Color")CUBERANKEDMEMBERReturns the nth member of a cube set by rank, such as the top-selling product.
CUBERANKEDMEMBER(connection, set_expression, rank, [caption])
=CUBERANKEDMEMBER("Sales","[Top10Products]",1)CUBESETDefines a set of members or tuples by sending a set expression to the cube, for use by other cube functions.
CUBESET(connection, set_expression, [caption], [sort_order], [sort_by])
=CUBESET("Sales","[Product].MEMBERS")CUBESETCOUNTReturns the number of items in a set defined by CUBESET.
CUBESETCOUNT(set)
=CUBESETCOUNT(A1)CUBEVALUEReturns an aggregated value from a cube for the specified combination of members.
CUBEVALUE(connection, [member_expression1], ...)
=CUBEVALUE("Sales","[Measures].[Sales]")Web3
ENCODEURLReturns text as a URL-encoded string, replacing special characters such as spaces with percent codes.Excel 2013
ENCODEURL(text)
=ENCODEURL("hello world")→ "hello%20world"FILTERXMLReturns specific data from XML content using an XPath expression; not available in Excel for the web or Mac.Excel 2013
FILTERXML(xml, xpath)
=FILTERXML(A1,"//item/name")WEBSERVICEReturns data from a web service at the specified URL; works only in Excel for Windows.Excel 2013
WEBSERVICE(url)
=WEBSERVICE("https://api.example.com/data")Compatibility40
BETADISTReturns the cumulative beta distribution; use BETA.DIST in new workbooks.Legacy compatibility
BETADIST(x, alpha, beta, [A], [B])
=BETADIST(2,8,10,1,3)BETAINVReturns the inverse of the cumulative beta distribution; use BETA.INV in new workbooks.Legacy compatibility
BETAINV(probability, alpha, beta, [A], [B])
=BETAINV(0.685,8,10,1,3)BINOMDISTReturns the individual term binomial distribution probability; use BINOM.DIST in new workbooks.Legacy compatibility
BINOMDIST(number_s, trials, prob_s, cumulative)
=BINOMDIST(6,10,0.5,FALSE)CHIDISTReturns the right-tailed probability of the chi-squared distribution; use CHISQ.DIST.RT in new workbooks.Legacy compatibility
CHIDIST(x, deg_freedom)
=CHIDIST(18.307,10)CHIINVReturns the inverse of the right-tailed probability of the chi-squared distribution; use CHISQ.INV.RT in new workbooks.Legacy compatibility
CHIINV(probability, deg_freedom)
=CHIINV(0.05,10)CHITESTReturns the p-value of a chi-squared test for independence; use CHISQ.TEST in new workbooks.Legacy compatibility
CHITEST(actual_range, expected_range)
=CHITEST(A1:B3,D1:E3)CONFIDENCEReturns the margin of a confidence interval for a population mean using a normal distribution; use CONFIDENCE.NORM in new workbooks.Legacy compatibility
CONFIDENCE(alpha, standard_dev, size)
=CONFIDENCE(0.05,2.5,50)COVARReturns the population covariance, the average of the products of deviations for each data pair; use COVARIANCE.P in new workbooks.Legacy compatibility
COVAR(array1, array2)
=COVAR(A:A,B:B)CRITBINOMReturns the smallest value for which the cumulative binomial distribution is greater than or equal to a criterion value; use BINOM.INV in new workbooks.Legacy compatibility
CRITBINOM(trials, probability_s, alpha)
=CRITBINOM(6,0.5,0.75)EXPONDISTReturns the exponential distribution; use EXPON.DIST in new workbooks.Legacy compatibility
EXPONDIST(x, lambda, cumulative)
=EXPONDIST(0.2,10,TRUE)FDISTReturns the right-tailed F probability distribution; use F.DIST.RT in new workbooks.Legacy compatibility
FDIST(x, deg_freedom1, deg_freedom2)
=FDIST(15.2069,6,4)FINVReturns the inverse of the right-tailed F probability distribution; use F.INV.RT in new workbooks.Legacy compatibility
FINV(probability, deg_freedom1, deg_freedom2)
=FINV(0.01,6,4)FORECASTReturns a predicted value along a linear trend; use FORECAST.LINEAR in new workbooks.Legacy compatibility
FORECAST(x, known_ys, known_xs)
=FORECAST(30,B:B,A:A)FTESTReturns the result of an F-test, the two-tailed probability that the variances of two arrays are not significantly different; use F.TEST in new workbooks.Legacy compatibility
FTEST(array1, array2)
=FTEST(A:A,B:B)GAMMADISTReturns the gamma distribution; use GAMMA.DIST in new workbooks.Legacy compatibility
GAMMADIST(x, alpha, beta, cumulative)
=GAMMADIST(10,9,2,TRUE)GAMMAINVReturns the inverse of the cumulative gamma distribution; use GAMMA.INV in new workbooks.Legacy compatibility
GAMMAINV(probability, alpha, beta)
=GAMMAINV(0.068,9,2)HYPGEOMDISTReturns the hypergeometric distribution; use HYPGEOM.DIST in new workbooks.Legacy compatibility
HYPGEOMDIST(sample_s, number_sample, population_s, number_pop)
=HYPGEOMDIST(1,4,8,20)LOGINVReturns the inverse of the cumulative lognormal distribution; use LOGNORM.INV in new workbooks.Legacy compatibility
LOGINV(probability, mean, standard_dev)
=LOGINV(0.039,3.5,1.2)LOGNORMDISTReturns the cumulative lognormal distribution; use LOGNORM.DIST in new workbooks.Legacy compatibility
LOGNORMDIST(x, mean, standard_dev)
=LOGNORMDIST(4,3.5,1.2)MODEReturns the most frequently occurring value in a data set; use MODE.SNGL in new workbooks.Legacy compatibility
MODE(number1, ...)
=MODE(B:B)NEGBINOMDISTReturns the negative binomial distribution; use NEGBINOM.DIST in new workbooks.Legacy compatibility
NEGBINOMDIST(number_f, number_s, probability_s)
=NEGBINOMDIST(10,5,0.25)NORMDISTReturns the normal distribution for a given mean and standard deviation; use NORM.DIST in new workbooks.Legacy compatibility
NORMDIST(x, mean, standard_dev, cumulative)
=NORMDIST(42,40,1.5,TRUE)NORMINVReturns the inverse of the normal cumulative distribution; use NORM.INV in new workbooks.Legacy compatibility
NORMINV(probability, mean, standard_dev)
=NORMINV(0.908,40,1.5)NORMSDISTReturns the standard normal cumulative distribution; use NORM.S.DIST in new workbooks.Legacy compatibility
NORMSDIST(z)
=NORMSDIST(1.33)NORMSINVReturns the inverse of the standard normal cumulative distribution; use NORM.S.INV in new workbooks.Legacy compatibility
NORMSINV(probability)
=NORMSINV(0.908)PERCENTILEReturns the k-th percentile of values in a range; use PERCENTILE.INC in new workbooks.Legacy compatibility
PERCENTILE(array, k)
=PERCENTILE(B:B,0.5)PERCENTRANKReturns the rank of a value as a percentage of a data set; use PERCENTRANK.INC in new workbooks.Legacy compatibility
PERCENTRANK(array, x, [significance])
=PERCENTRANK(A:A,A2)POISSONReturns the Poisson distribution; use POISSON.DIST in new workbooks.Legacy compatibility
POISSON(x, mean, cumulative)
=POISSON(2,5,TRUE)QUARTILEReturns the quartile of a data set; use QUARTILE.INC in new workbooks.Legacy compatibility
QUARTILE(array, quart)
=QUARTILE(A:A,1)RANKReturns the rank of a number in a list of numbers; use RANK.EQ or RANK.AVG in new workbooks.Legacy compatibility
RANK(number, ref, [order])
=RANK(B2,B:B,0)STDEVReturns the standard deviation based on a sample; use STDEV.S in new workbooks.Legacy compatibility
STDEV(number1, ...)
=STDEV(B:B)STDEVPReturns the standard deviation based on the entire population; use STDEV.P in new workbooks.Legacy compatibility
STDEVP(number1, ...)
=STDEVP(B:B)TDISTReturns the probability for Student's t-distribution (one-tailed or two-tailed); use T.DIST.2T or T.DIST.RT in new workbooks.Legacy compatibility
TDIST(x, deg_freedom, tails)
=TDIST(1.96,60,2)TINVReturns the two-tailed inverse of Student's t-distribution; use T.INV.2T in new workbooks.Legacy compatibility
TINV(probability, deg_freedom)
=TINV(0.0546,60)TTESTReturns the probability associated with a Student's t-test; use T.TEST in new workbooks.Legacy compatibility
TTEST(array1, array2, tails, type)
=TTEST(A:A,B:B,2,1)VARReturns the variance based on a sample; use VAR.S in new workbooks.Legacy compatibility
VAR(number1, ...)
=VAR(B:B)VARPReturns the variance based on the entire population; use VAR.P in new workbooks.Legacy compatibility
VARP(number1, ...)
=VARP(B:B)WEIBULLReturns the Weibull distribution; use WEIBULL.DIST in new workbooks.Legacy compatibility
WEIBULL(x, alpha, beta, cumulative)
=WEIBULL(105,20,100,TRUE)ZTESTReturns the one-tailed p-value of a z-test; use Z.TEST in new workbooks.Legacy compatibility
ZTEST(array, x, [sigma])
=ZTEST(A:A,4)FLOOR.PRECISE.LEGACYRounds a number down to the nearest integer or nearest multiple of significance; the result is the same as FLOOR.PRECISE.Legacy compatibility
FLOOR.PRECISE(number)
=FLOOR.PRECISE(4.3)Have a specific question?
The AI tutor answers questions about Excel in English or Malay.