Returns the modified Macauley duration for a security with an assumed par value of $100.
If this function is not available, and returns the #NAME? error, install and load the Analysis ToolPak addin.
How?
 On the Tools menu, click AddIns.
 In the AddIns available list, select the Analysis ToolPak box, and then click OK.
 If necessary, follow the instructions in the setup program.
Syntax
MDURATION(settlement,maturity,coupon,yld,frequency,basis)
Important Dates should be entered by using the DATE function, or as results of other formulas or functions. For example, use DATE(2008,5,23) for the 23rd day of May, 2008. Problems can occur if dates are entered as text.
Settlement is the security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
Maturity is the security's maturity date. The maturity date is the date when the security expires.
Coupon is the security's annual coupon rate.
Yld is the security's annual yield.
Frequency is the number of coupon payments per year. For annual payments, frequency = 1; for semiannual, frequency = 2; for quarterly, frequency = 4.
Basis is the type of day count basis to use.
Basis 
Day count basis 
0 or omitted 
US (NASD) 30/360 
1 
Actual/actual 
2 
Actual/360 
3 
Actual/365 
4 
European 30/360 
Remarks
 Microsoft Excel stores dates as sequential serial numbers so they can be used in calculations. By default, January 1, 1900 is serial number 1, and January 1, 2008 is serial number 39448 because it is 39,448 days after January 1, 1900. Microsoft Excel for the Macintosh uses a different date system as its default.
 The settlement date is the date a buyer purchases a coupon, such as a bond. The maturity date is the date when a coupon expires. For example, suppose a 30year bond is issued on January 1, 2008, and is purchased by a buyer six months later. The issue date would be January 1, 2008, the settlement date would be July 1, 2008, and the maturity date is January 1, 2038, which is 30 years after the January 1, 2008, issue date.
 Settlement, maturity, frequency, and basis are truncated to integers.
 If settlement or maturity is not a valid date, MDURATION returns the #VALUE! error value.
 If yld < 0 or if coupon < 0, MDURATION returns the #NUM! error value.
 If frequency is any number other than 1, 2, or 4, MDURATION returns the #NUM! error value.
 If basis < 0 or if basis > 4, MDURATION returns the #NUM! error value.
 If settlement ≥ maturity, MDURATION returns the #NUM! error value.
 Modified duration is defined as follows:
Example
The example may be easier to understand if you copy it to a blank worksheet.
How to copy an example
 Create a blank workbook or worksheet.
 Select the example in the Help topic.
Note Do not select the row or column headers.
Selecting an example from Help
 Press CTRL+C.
 In the worksheet, select cell A1, and press CTRL+V.
 To switch between viewing the results and viewing the formulas that return the results, press CTRL+` (grave accent), or on the Formulas tab, in the Formula Auditing group, click the Show Formulas button.

A 
B 
Data 
Description 
January 1, 2008 
Settlement date 
January 1, 2016 
Maturity date 
8% 
Percent coupon 
9.0% 
Percent yield 
2 
Frequency is semiannual (see above) 
1 
Actual/actual basis (see above) 
Formula 
Description (Result) 
=MDURATION(A2,A3,A4,A5,A6,A7) 
The modified duration, for the bond with the terms above (5.73567) 
