Thread: IRR
View Single Post
  #14   Report Post  
Posted to microsoft.public.excel.worksheet.functions
Dana DeLouis[_3_] Dana DeLouis[_3_] is offline
external usenet poster
 
Posts: 690
Default IRR

They are very large numbers -- approximately + or - 5368709120%

Hi. I may be wrong, but here goes.
Excel's IRR can not handle this, but if we tell it to start a hair to
the left of the discontinuity line, we can get the only real solution.
This is not the compete function I use, but should work.
Again, the solution is not very meaningful.

? MyIRR([A1:A6],-1.001)

-2.09963276604736

Function MyIRR(Rng, Optional Guess As Double)
'// = = = = = = = = = = = = = = = = =
'// Assumes a vertical array of data
'// By: Dana DeLouis
'// = = = = = = = = = = = = = = = = =

Dim v
Dim dr()
Dim R
Dim OldRte
Dim Ct As Long
Dim J As Long

With WorksheetFunction
'Make 1-Dimensional
v = .Transpose(Rng.Value)
For J = 1 To UBound(v)
v(J) = CSng(v(J))
Next J

'Make an exact derivative
ReDim dr(1 To UBound(v) - 1)
For J = 1 To UBound(dr)
dr(J) = -J * v(J + 1)
Next J

If IsMissing(Guess) Then
R = 0.1
Else
R = Guess
End If

Do
OldRte = R
R = R - .SeriesSum(1 + R, 0, -1, v) / _
.SeriesSum(1 + R, -2, -1, dr)
Ct = Ct + 1
Loop While OldRte < R And Ct <= 40
End With

MyIRR = R
End Function

Again, Excel's IRR can not do this. :~
= = =
HTH
Dana DeLouis

Ron Rosenfeld wrote:
On Sat, 24 Jan 2009 14:00:01 -0000, "David Biddulph" <groups [at]
biddulph.org.uk wrote:

As a matter of interest, what are the two values of discount rate which give
NPV = 0?
--
David Biddulph


They are very large numbers -- approximately + or - 5368709120%

But I suspect it is the complex nature of the cash flows that make IRR
inappropriate.
--ron