File tree Expand file tree Collapse file tree 2 files changed +1
-5
lines changed
src/ExcelFinancialFunctions Expand file tree Collapse file tree 2 files changed +1
-5
lines changed Original file line number Diff line number Diff line change @@ -18,12 +18,10 @@ module internal TestPreconditions =
18
18
( pmt <> 0. || fv <> 0. )
19
19
let tryFv r nper pmt pv pd =
20
20
( raisable r nper) &&
21
- ( r <> - 1. || ( r = - 1. && nper > 0. ) ) &&
22
- ( pmt <> 0. || pv <> 0. )
21
+ ( r <> - 1. || ( r = - 1. && nper > 0. ) )
23
22
let tryPmt r nper pv fv pd =
24
23
( raisable r nper) &&
25
24
( r > - 1. ) &&
26
- ( fv <> 0. || pv <> 0. ) &&
27
25
( annuityCertainPvFactor r nper pd <> 0. )
28
26
let tryNper r pmt pv fv pd =
29
27
( r > - 1. ) &&
Original file line number Diff line number Diff line change @@ -28,13 +28,11 @@ module internal Tvm =
28
28
let calcFv r nper pmt pv pd =
29
29
( raisable r nper) |> elseThrow " r is not raisable to nper (r is negative and nper not an integer"
30
30
( r <> - 1. || ( r = - 1. && nper > 0. ) ) |> elseThrow " r cannot be -100% when nper is <= 0"
31
- ( pmt <> 0. || pv <> 0. ) |> elseThrow " pmt or pv need to be different from 0"
32
31
if r = - 1. && pd = PaymentDue.BeginningOfPeriod then - ( pv * fvFactor r nper)
33
32
elif r = - 1. && pd = PaymentDue.EndOfPeriod then - ( pv * fvFactor r nper + pmt)
34
33
else fv r nper pmt pv pd
35
34
let calcPmt r nper pv fv pd =
36
35
( raisable r nper) |> elseThrow " r is not raisable to nper (r is negative and nper not an integer"
37
- ( fv <> 0. || pv <> 0. ) |> elseThrow " fv or pv need to be different from 0"
38
36
( r <> - 1. || ( r = - 1. && nper > 0. && pd = PaymentDue.EndOfPeriod) ) |> elseThrow " r cannot be -100% when nper is <= 0"
39
37
( annuityCertainPvFactor r nper pd <> 0. ) |> elseThrow " 1 * pd + 1 - (1 / (1 + r)^nper) / nper has to be <> 0"
40
38
if r = - 1. then - fv
You can’t perform that action at this time.
0 commit comments