IRR Function [VBA]

Calculates the internal rate of return for an investment.


This constant, function or object is enabled with the statement Option VBASupport 1 placed before the executable program code in a module.


IRR(Values() as Double , [Guess as Variant])

Return value:



Values(): The array of values of the cash-flow. The values represent cash flow values at regular intervals, at least one value must be negative (payments), and at least one value must be positive (income).

Guess An initial estimate at what the IRR will be.

Error codes:

5 Invalid procedure call


REM ***** BASIC *****
Option VBASupport 1
Sub ExampleIRR
 Dim cashFlow(0 to 3) As Double
 cashFlow(0) = -10000
 cashFlow(1) = 3500
 cashFlow(2) = 7600
 cashFlow(3) = 1000
 irrValue = IRR(cashFlow) * 100
 Print irrValue ' returns 11.3321028236252 . The internal rate of return of the cash flow.
End Sub

Please support us!