Excel Functions List
Below are over 200 Excel functions to help you become a world-class financial analyst.
Date and Time
DATE | Create a valid date from year, month, and day | year month day |
DATEDIF | Get days, months, or years between two dates | start_date end_date unit |
DATEVALUE | Convert a date in text format to a valid date | date_text |
DAY | Get the day as a number (1-31) from a date | date |
DAYS | Get days between dates | end_date start_date |
DAYS360 | Get days between 2 dates in a 360-day year | start_date end_date method |
EDATE | Get the same date in future or past months | start_date months |
EOMONTH | Get the last day of the month in future or past months | start_date months |
HOUR | Get the hour as a number (0-23) from a time | serial_number |
ISOWEEKNUM | Get ISO week number for a given date | date |
MINUTE | Get the minute as a number (0-59) from a time | serial_number |
MONTH | Get the month as a number (1-12) from a date | date |
NETWORKDAYS | Get the number of working days between two dates | start_date end_date holidays |
NETWORKDAYS.INTL | Get work days between two dates | start_date end_date weekend holidays |
NOW | Get the current date and time | - |
SECOND | Get the second as a number (0-59) from a time | serial_number |
TIME | Create a time with hours, minutes, and seconds | hour minute second |
TIMEVALUE | Get a valid time from a text string | time_text |
TODAY | Get the current date | - |
WEEKDAY | Get the day of the week as a number | serial_number return_type |
WEEKNUM | Get the week number for a given date | serial_number return_type |
WORKDAY | Get a date n working days in the future or past | start_date days holidays |
WORKDAY.INTL | Get date n working days in future or past | start_date days weekend holidays |
YEAR | Get the year from a date | date |
YEARFRAC | Get the fraction of a year between two dates | start_date end_date basis |
Financial
ACCRINT | Get the accrued interest for a security that pays interest on a periodic basis | issue first interest settlement rate par frequency basis calc_method |
ACCRINTM | Get the accrued interest for a security that pays interest on maturity | issue settlement rate par basis |
CUMIPMT | Get the cumulative interest paid on a loan | rate nper pv start_period end_period type |
CUMPRINC | Get the cumulative principal paid on a loan | rate nper pv start_period end_period type |
DB | Calculate the depreciation of an asset | cost salvage life period month |
DISC | Calculate the rate of discount for a bond | settlement maturity pr redemption basis |
DOLLARDE | Converts a dollar value in fractional notation into a dollar value expressed in decimal notation | fractional_dollar fraction |
DOLLARFR | Convert a dollar value in decimal notation into a dollar value in fractional notation | decimal_dollar fraction |
DURATION | Get the duration of a security | settlement maturity coupon yield frequency basis |
EFFECT | Get the annual interest rate and the number of compounding periods per year | nominal_rate npery |
FV | Get the future value of an investment | rate nper pmt pv type |
FVSCHEDULE | Get the future value of an investment with a variable interest rate | principal schedule |
INTRATE | Get the interest rate for a security | settlement maturity investment redemption basis |
IPMT | Get principal for given period | rate per nper pv fv type |
IRR | Get the Internal Rate of Return for a given cash flow | values guess |
ISPMT | Get the interest paid during a specific period of Investment | rate per nper pv |
MDURATION | Get the duration of a security using the Modified Macauley method | settlement maturity coupon yld frequency basis |
MIRR | Get the modified internal rate of return for given periodic cash flows | values finance_rate reinvest rate |
NOMINAL | Get the nominal annual interest rate | effect_rate npery |
NPER | Get number of periods for loan or investment | rate pmt pv fv type |
NPV | Get the Net Present Value (NPV) for periodic cash flows | rate value1 value2 |
PDURATION | Get the time or specific number of periods required for an investment to reach a particular value | rate pv fv |
PMT | Get the periodic payment for a loan | rate nper pv fv type |
PPMT | Get the payment on the principal for an investment or a loan | rate per pv fv type |
PRICE | Get the price of a bond per $100 face value | settlement maturity rate yld redemption frequency basis |
PRICEDISC | Get the price of a bond per $100 face value of a discounted security | settlement maturity discount redemption basis |
PRICEMAT | Get the price of a bond that pays interest at maturity per $100 face value | settlement maturity issue rate yld basis |
PV | Get the present value of an investment | rate nper pmt fv type |
RATE | Get the interest rate per period of an annuity | nper pmt pv fv type guess |
RECEIVED | Get the amount received at maturity for a fully invested security | settlement maturity investment discount basis |
SLN | Get the straight-line depreciation of an asset | cost salvage life |
SYD | Get the sum-of-years' digits depreciation of an asset | cost salvage life per |
TBILLPRICE | Get the fair market value of a Treasury bill | settlement maturity discount |
TBILLEQ | Get the bond-equivalent yield of a Treasury bill | settlement matirity discount |
TBILLYIELD | Get the yield on a Treasury bill | settlement maturity pr |
VDB | Get the depreciation of an asset using the Double Declining Balance method | cost salvage life start_period end_period factor no_switch |
XIRR | Get the Internal Rate of Return (IRR) for a series of cash flows that may not be periodic | values dates guess |
XNPV | Get the Net Present Value (NPV) for a series of cash flows that may not be periodic | rate values dates |
YIELD | Get the yield on a security | settlement maturity rate pr redemption frequency basis |
YIELDDISC | Get the annual yield for a discounted security | settlement maturity pr redemption basis |
YIELDMAT | Get the annual yield on a security | settlement maturity issue rate pr basis |
Engineering
CONVERT | Convert measurement units | number from_unit to_unit |
Information
CELL | Get information about a cell | info_type reference |
ERROR.TYPE | Test for a specific error value | error_val |
INFO | Get information about current environment | type_text |
ISBLANK | Test if a cell is blank | value |
ISERR | Test for any error but #N/A | value |
ISERROR | Test for any error | value |
ISEVEN | Test if a value is even | value |
ISFORMULA | Test if a cell contains a formula | reference |
ISLOGICAL | Test if a value is logical | value |
ISNA | Test for the #N/A error | value |
ISNONTEXT | Test for a non-text value | value |
ISNUMBER | Test for numeric value | value |
ISODD | Test if a value is odd | value |
ISREF | Test for a reference | value |
ISTEXT | Test for a text value | value |
N | Convert a value to a number | value |
NA | Create an #N/A error | - |
TYPE | Get the type of value in a cell | value |
Logical
AND | Test multiple conditions with AND | logical1 logical2 ... |
FALSE | Generate the logical value FALSE | - |
IF | Test for a specific condition | logical_test value_if_true value_if_false |
IFERROR | Trap and handle errors | value value_if_error |
IFNA | Returns a specified alternate value if a formula results in an #N/A error | value value_if_na |
IFS | Test multiple conditions, return first true | test1 value1 test2 value2 ... |
NOT | Reverse arguments or results | logical |
OR | Test multiple conditions with OR | logical1 logical2 ... |
SWITCH | Evaluates a given expression and returns a result corresponding to the first matching value | expression value1 result1 default value2 result2 ... |
TRUE | Generate the logical value TRUE | - |
XOR | Perform exclusive OR | logical1 logical2 ... |
Lookup and Reference
ADDRESS | Create a cell address from a given row and column | row_num col_num abs_num a1 sheet |
AREAS | Get the number of areas in a reference | reference |
CHOOSE | Get a value from a list based on position | index_num value1 value2 |
COLUMN | Get the column number of a reference | - reference |
COLUMNS | Get the number of columns in an array or reference | array |
FORMULATEXT | Get the formula in a cell | reference |
GETPIVOTDATA | Get data from a pivot table in a formula | data_field pivot_table field1 item1 ... |
HLOOKUP | Look up a value in a table by matching on the first row | value table row_index range_lookup |
HYPERLINK | Create a clickable link | link_locaation friendly_name |
INDEX | Get a value in a list or table based on location | array row_num col_num area_num |
INDIRECT | Create a reference from text | ref_text a1 |
LOOKUP | Look up a value in a one-column range | lookup_value lookup_vector result_vector |
MATCH | Get the position of an item in an array | lookup_value lookup_array match_type |
OFFSET | Create a reference offset from given starting point | reference rows cols height width |
ROW | Get the row number of a reference | - reference |
ROWS | Get the number of rows in an array or reference | array |
RTD | Get real-time data from a COM automation server | progID server topic1 topic2 ... |
TRANSPOSE | Flip the orientation of a range of cells | array |
VLOOKUP | Look up a value in a table by matching on the first column | value table col_index range_lookup |
Math
ABS | Find the absolute value of a number | number |
ARABIC | Convert a Roman numeral to an Arabic numeral | roman_text |
BASE | Converts a number into the supplied base | number radix min_length |
CEILING | Round a number up to the nearest specified multiple | number multiple |
CEILING.MATH | Round a number to the nearest integer or multiple of significance | number significance mode |
CEILING.PRECISE | Round up a number to the nearest integer or multiple of significance | number significance |
COMBIN | Calculate the total number of combinations | number number_chosen |
COMBINA | Calculate the total number of combinations along with repetitions | number number_chosen |
DEGREES | Convert radians to degrees | angle |
EVEN | Round a number up to the next even integer | number |
ISO.CEILING | Get a number rounded up to the nearest integer or multiple of significance | number signficance |
MOD | Get the remainder from division | number divisor |
MROUND | Round a number to the nearest specified multiple | number multiple |
ODD | Round a number up to the next odd integer | number |
PI | Get the value of π | - |
RAND | Get a random number between 0 and 1 | - |
RANDBETWEEN | Get a random integer between two values | bottom top |
ROUND | Round a number to a given number of digits | number num_digits |
ROUNDDOWN | Round a number down to a given number of digits | number num_digits |
ROUNDUP | Round a number up to a given number of digits | number num_digits |
SQRT | Find the positive square root of a number | number |
SUBTOTAL | Get a subtotal in a list or database | function_num ref1 ref2 ... |
SUM | Add numbers together | number1 number2 number3 ... |
SUMIF | Sum numbers in a range that meet supplied criteria | range criteria sum_range |
SUMIFS | Sum cells that match multiple criteria | sum_range range1 criteria1 range2 criteria2 ... |
SUMPRODUCT | Multiply, then sum arrays | array1 array2 ... |
TRUNC | Truncate a number to a given precision | number num_digits |
Statistical
AVERAGE | Get the average of a group of numbers | number1 number2 ... |
AVERAGEA | Get the average of a group of numbers and text | value1 value2 ... |
AVERAGEIF | Get the average of numbers that meet criteria | range criteria average-criteria |
AVERAGEIFS | Average cells that match multiple criteria | avg_rng range1 criteria1 range2 criteria2 ... |
BINOM.DIST | Get the binomial distribution probability for the number of successes from the trials | number_s trials probability_s cumulative |
BINOM.DIST.RANGE | Get the binomial distribution probability for a given number of successes | trials probability_s number_s number_s2 |
CHISQ.DIST | Get the chi-square distribution | x deg_freedom cumulative |
CHISQ.DIST.RT | Get the right-tailed probability of a chi-square distribution | x deg_freedom |
CHISQ.INV | Get the inverse of the left-tailed probability of the chi-square distribution | probability deg_freedom |
CHISQ.INV.RT | Get the inverse of the right-tailed probability of a chi-square distribution | probabilty deg_freedom |
CHISQ.TEST | Get the chi-square distribution of two provided datasets | actual_range expected_range |
CONFIDENCE | Get the confidence interval for a population mean | alpha standard_dev size |
CONFIDENCE.NORM | Get the confidence interval for a population mean | alpha standard_dev size |
CONFIDENCE.T | Get the confidence value for the confidence interval of a population mean | alpha standard_dev size |
CORREL | Calculate the correlation coefficient between two variables | array1 array2 |
COUNT | Count numbers | value1 value2 ... |
COUNTA | Count the number of non-blank cells | value1 value2 ... |
COUNTBLANK | Count cells that are blank | range |
COUNTIF | Count cells that match criteria | range criteria |
COUNTIFS | Count cells that match multiple criteria | range1 criteria1 range2 criteria2 ... |
COVAR | Get the covariance of two sets of values | array1 array2 |
COVARIANCE.P | Get the covariance of two given set of values | array1 array2 |
COVARIANCE.S | Get the sample covariance for two sets of values | array1 array2 |
CRITBINOM | Get the smallest value that is greater than or equal to the criterion value in a Cumulative Binomial Distribution | trials probability_s trials |
DEVSQ | Get the sum of the squared deviations from the sample mean | number1 number2 |
F.DIST | Calculate the probability density function | x deg_freedom1 deg_freedom2 cumulative |
F.DIST.RT | Calculate the (right-tailed) F Probability Distribution | x deg_freedom1 deg_freedom2 |
F.INV | Calculate the inverse of the Cumulative F Distribution for a supplied probability | x deg_freedom1 deg_freedom2 |
F.INV.RT | Calculate the inverse of the (right-tailed) F probability distribution | probability deg_freedom1 deg_freedom2 |
FORECAST | Get the future value using existing values | x known_y’s known_x’s |
FORECAST.LINEAR | Get the future value using linear progression | x known_y’s known_x’s |
FREQUENCY | Get the frequency of values in a data set | data_array bins_array |
F.TEST | Get the result of an F-test for two given arrays or ranges | array1 array2 |
GAUSS | Get the probability that a member of a standard normal population will be between the mean and a specified number of standard deviations | z |
GROWTH | Get the predicted exponential growth using existing data | known_y’s known_x’s new_x’s const |
LARGE | Get the nth largest value | array n |
LOGNORM.DIST | Get the cumulative log-normal distribution function at a given value of x | x mean standard_dev cumulative |
LOGNORM.INV | Get the inverse of the lognormal cumulative lognormal distribution function at a given value of x | probability mean standard_dev |
MAX | Get the largest value | number1 number2 ... |
MAXA | Get the largest value | value1 value2 ... |
MAXIFS | Get maximum value with criteria | max_range range1 criteria1 range2 criteria2 ... |
MEDIAN | Get the median of a group of numbers | number1 number2 ... |
MIN | Get the smallest value | number1 number2 ... |
MINA | Get the smallest value | value1 value2 ... |
MINIFS | Get minimum value with criteria | min_range range1 criteria1 range2 criteria2 ... |
MODE | Get the mode of a group of numbers | number1 number2 ... |
MODE.MULT | Get a vertical array of statistical modes within a list of given numbers | number1 number2 |
MODE.SNGL | Get the most frequently occurring number in a numeric data set | number1 number2 |
NEGBINOM.DIST | Get the negative binomial distribution probability | number_f number_s probabilty_s cumulative |
NORMDIST | Get the normal distribution for a stated mean and standard distribution | x mean standard_dev cumulative |
NORM.DIST | Get the probability that variable x falls below or at a specified value | x mean standard_dev cumulative |
NORMINV | Get the inverse of a normal cumulative distribution | probability mean standard_dev |
NORM.INV | Get the inverse of a normal cumulative distribution | probability mean standard_dev |
NORM.S.DIST | Get the standard normal distribution function for a given value | z cumulative |
NORM.S.INV | Get the inverse of the normal cumulative distribution for a given probability value | probability |
PEARSON | Get the Pearson Product-Moment Correlation Coefficient for two sets of values | array1 array2 |
PERCENTILE | Get the k-th percentile of the values in a range | array k |
PERCENTILERANK | Get the rank of a value in a data set | array x significance |
PERMUT | Get the total number of permutations | number number_chosen |
PERMUTATIONA | Get the total number of permutations, with repetitions | number number_chosen |
PHI | Get the value of the density function for a standard normal distribution | x |
POISSON.DIST | Get the Poisson probability mass function | x mean cumulative |
PROB | Get the probability that is associated with a given range | x_range prob_range lower_limit upper_limit |
QUARTILE | Get the quartile in a data set | array quart |
QUARTILE.EXC | Get the quartile of a given data set based on percentile values from 0.1 exclusive | array quart |
QUARTILE.INC | Get the quartile of a given data set based on percentile values from 0.1 inclusive | array quart |
RANK | Rank a number against a range of numbers | number array order |
SLOPE | Get the slope of a linear regression line | known_y's Known_x’s |
SMALL | Get the nth smallest value | array k |
STANDARDIZE | Get a normalized value (z-score) based on the mean and standard deviation | x mean standard_dev |
STDEV | Get the standard deviation in a sample | number1 number2 ... |
STDEVA | Get the standard deviation in a sample | number1 number2 ... |
STDEVPA | Get the standard deviation of an entire population given as arguments | value1 value2 |
STDEV.P | Get the standard deviation in a population | number1 number2 ... |
STDEV.S | Get the standard deviation in a sample | number1 number2 ... |
T.DIST | Get the student's t-distribution | x deg_freedom tails |
T.DIST.RT | Get the right-tailed student's t-distribution | x deg_freedom |
T.INV | Get the left-tailed student's t-distribution | probability deg_freedom |
T.INV.2T | Get the two-tailed student's T-Distribution | probability deg_freedom |
T.TEST | Get the probability associated with a student’s t-test | array1 array2 tails type |
TREND | Get the linear trend line to the arrays of known_y’s and known_x’s | known_y’s known_x’s new_x’s const |
VARA | Get the sample variance of a set of values | number1 number2 ... |
VAR.P | Get the variance of a set of values (population) | number1 number2 ... |
VAR.S | Get the variance of a sample | number1 number2 ... |
WEIBULL.DIST | Get the Weibull distribution for a supplied set of parameters | x alpha beta cumulative |
Z.TEST | Get the one-tailed P-value of a Z-test | array x sigma |
Text
CHAR | Get a character from a number | number |
CLEAN | Strip non-printable characters from text | text |
CODE | Get the code for a character | text |
CONCAT | Join text values without delimiter | text1 text2 ... |
CONCATENATE | Join text together | text1 text2 text3 ... |
DOLLARDE | Converts a dollar value in fractional notation into a dollar value in decimal notation | fractional_dollar fraction |
EXACT | Compare two text strings | text1 text2 |
FIND | Get the location of text in a string | find_text within_text start_num |
FIXED | Rounds and converts a supplied number to text | number decimal no_commas |
LEFT | Extract text from the left of a string | text num_chars |
LEN | Get the length of text | text |
LOWER | Convert text to lower case | text |
MID | Extract text from inside a string | text start_num num_chars |
NUMBERVALUE | Converts a text string into a number in a locale-independent manner | text decimal_separator group_separator |
PROPER | Capitalize the first letter in each word | text |
REPLACE | Replace text based on location | old_text start_num num_chars new_text |
REPT | Repeat text as specified | text number_times |
RIGHT | Extract text from the right of a string | text num_chars |
SEARCH | Get the location of text in a string | find_text within_text start_num |
SUBSTITUTE | Replace text based on content | text old_text new_text instance |
T | Tests if the value provided is a text or not | value |
TEXT | Convert a number to text in a number format | value format_text |
TEXTJOIN | Join text values with a delimiter | delimiter ignore_empty text1 text2 ... |
TRIM | Remove extra spaces from text | text |
UNICHAR | Get the Unicode character for a given number | number |
UNICODE | Get the code point for a given character | text |
UPPER | Convert text to upper case | text |
VALUE | Convert text to a number | text |