Microsoft KB Archive/192376

From BetaArchive Wiki
Knowledge Base


Article ID: 192376

Article Last Modified on 6/27/2007



APPLIES TO

  • Microsoft Excel 98 for Macintosh



This article was previously published under Q192376

For a Microsoft Excel for Windows version of this article, see 110854.


SUMMARY

The RATE() function in Microsoft Excel, and the @RATE function in Lotus 1-2- 3, both return the periodic interest rate necessary for an investment to grow to a specific value over a specified number of compounding periods. However, in Microsoft Excel, RATE() assumes a known stream of payments. If the payment amount per period is not known, you can still use the RATE() function, but you must modify it slightly.

You must use a manually entered formula to determine the annualized interest rate for an investment with more than one compounding period per year. You can also use a custom function to make this calculation easier.

MORE INFORMATION

To use the RATE() function in Microsoft Excel when the payment per period is not known, you must enter the number of compounding periods, the present value as a negative number, and the future value.

For example, an initial investment of $1,000, that has grown to $2,000 when compounded quarterly over six years would return 2.93% per quarter when entered as follows:

=RATE(24,,-1000,2000)


To determine the annualized interest rate for an investment, use the following formula

=((FV/PV)^(1/N)^M)-1


where FV is the future value of an investment, PV is the initial investment, N is the total number of compounding periods, and M is the number of compounding periods per year.

The following formula, when used with the numbers from the previous example, will return 12.2462% per year:

=((2000/1000)^(1/24)^4)-1


Creating a Function Macro

Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements. To create this function using Visual Basic for Applications, enter the following in a new Visual Basic module:

   Function Yearly_Rate(FV, PV, N, M) As Double     'Defines variables
       Yearly_Rate = ((FV / PV) ^ (1 / N)^M) - 1    'Performs computation
   End Function                                     'Ends function
                

To use the custom function, follow these steps:

  1. Enter the following values on a worksheet:

          A1:   20000
          A2:   10000
          A3:      72
          A4:      12
  2. In any blank cell, enter the following formula:

    =Yearly_Rate(A1,A2,A3,A4)

The annual interest rate returned is 12.2462%.

REFERENCES

For more information about creating a custom function, from the Visual Basic Editor, click the Office Assistant, type function statement, click Search, and then click to view "Function Statement."

NOTE: If the Assistant is hidden, click the Office Assistant button on the Standard toolbar. If the Assistant is not able to answer your query, please see the following article in the Microsoft Knowledge Base:

176476 OFF: Office Assistant Not Answering Visual Basic Questions



Additional query words: xl98 growth

Keywords: kbhowto kbmigrate KB192376