Contact

MIRR Function (Calligra Sheets)

Financial Intermediate Calligra Sheets

Calculate Calligra MIRR with separate finance and reinvestment rates. Reproduce terminal-value checks and see important cash-flow type and rate-validation limits.

Verification status: 21 selected formulas were executed through the Calligra Sheets 25.04.2 calculation engine library. Exact outputs, mathematical references and source limitations are documented separately. Version 26.08.2 was source-checked only; no GUI-cell or import claim. How formula examples are checked

Cash-flow type caution: in the tested 25.04.2 engine, a numeric string such as “200” is treated as zero inside the cash-flow array. TRUE and embedded errors also become zero there. This differs from NPV/IRR’s numeric-text conversion.

Quick answer: =MIRR({-1000;200;300;400;500};.1;.1) gives approximately 0.119230598752 in the tested Calligra calculation engine.

Availability and version history

  • Introduced: First release not established; the name is present in Calligra 2.4.0 source.
  • Supported in: Calligra Sheets 26.08.2, with no retirement established.
  • Scope: Desktop Sheets with the Financial module. Examples use English semicolon-separated formulas.
  • Checked: October 14, 2026. Selected formulas ran through the official 25.04.2 engine library. Source and independent mathematics were checked. This is engine evidence, with no GUI-cell or import verification; 26.08.2 was source-checked only.

What MIRR returns

MIRR combines the present value of negative cash flows, discounted at the finance rate, with the final-date value of positive cash flows, compounded at the reinvestment rate. With N supplied positions, the growth exponent spans N−1 intervals. Function-specific official reference.

Syntax and arguments

=MIRR(values;financeRate;reinvestmentRate)

Exactly three arguments are required: an ordered cash-flow array or range, finance rate and reinvestment rate. The first position is time zero. For an ordinary model, supply numeric cash flows with at least one positive and one negative amount, and both rates greater than −1. Registration and implementation.

Reproducible engine examples

The engine and mathematical columns are separate. Results are rounded to twelve decimal places, or thirteen significant digits in scientific notation for very small or large values. This is a display choice, not an accuracy guarantee. Inline arrays in braces are formula values, not a workbook-import test. Their semicolons separate columns and vertical bars separate rows. Strings remain explicitly quoted, and booleans use TRUE()/FALSE().

Formula Engine result Independent mathematical reference
=MIRR({-1000;200;300;400;500};.1;.1) 0.119230598752 0.119230598752
=MIRR({-1000;200;300;400;500};.05;.08) 0.11287554841 0.11287554841
=MIRR({-1000;0;0;0;1500};.1;.1) 0.1066819197 0.1066819197
=MIRR({-1000;-100;300;500;700};.1;.1) 0.102710351927 0.102710351927
=MIRR({-1000;1100};.1;.1) 0.1 0.1
=MIRR({-1000;400;400;400};0;0) 0.062658569183 0.062658569183
=MIRR({-1000;0;1210};.05;.1) 0.1 0.1
=MIRR({-1000;200;300;400;500};0;0) 0.087757305937 0.087757305937

Practical worksheet

For −1000 today and receipts of 200, 300, 400 and 500 at the next four period ends, finance and reinvestment rates of 10% give 0.119230598752, approximately 11.9230598752% per period.

The positive flows accumulate to 1569.2 at the final date: 200*1.1^3+300*1.1^2+400*1.1+500. The initial negative present value is 1000, so the independent calculation is (1569.2/1000)^(1/4)-1. Changing the reinvestment rate changes this result even when the cash flows remain identical.

Advanced interpretation and checks

With a 5% finance rate and 8% reinvestment rate, the same sequence returns approximately 0.112875548410. A later negative investment is discounted separately at the finance rate, rather than being added directly to the initial outlay.

At zero finance and reinvestment rates, the terminal positive amount is simply the sum of positive flows, but the N−1 root remains. The executed reconstruction below raises the returned growth factor to four and recovers 1.5692. MIRR is a stated reinvestment model; it is not the root-finding IRR equation.

The executed advanced check was:

=(1+MIRR({-1000;200;300;400;500};.1;.1))^4

Its engine result was 1.5692.

Boundaries and troubleshooting

All-positive, all-negative and all-zero arrays return #VALUE!. A reinvestment rate at or below −1 is explicitly rejected. The finance-rate guard is missing: the tested two-flow case with finance rate −1 returned 1 because its only negative flow was at time zero. That observation is not a usable general rate allowance.

The cash-flow loop accesses each value directly as a float. Numeric text, nonnumeric text, Boolean and error elements in the tested position all became zero and retained that position. Scalar rate arguments use a different converter. Incorrect arity gives #VALUE!. Validate the actual cash-flow types before comparing returns.

Formula Engine result
=MIRR({100;200};.1;.1) #VALUE!
=MIRR({-100;-200};.1;.1) #VALUE!
=MIRR({0;0};.1;.1) #VALUE!
=MIRR({-100;200};.1;-1) #VALUE!
=MIRR({-100;200};-1;.1) 1
=MIRR({-1000;"200";300;400;500};.1;.1) 0.06840547266
=MIRR({-1000;"abc";300;400;500};.1;.1) 0.06840547266
=MIRR({-1000;TRUE();300;400;500};.1;.1) 0.06840547266
=MIRR({-1000;1/0;300;400;500};.1;.1) 0.06840547266
=MIRR(-1000;.1;.1) #VALUE!
=MIRR({-100;200};.1) #VALUE!
=MIRR({-100;200};.1;.1;0) #VALUE!

Official evidence and precision scope

The financial module and value-calculation helpers are byte-identical between the inspected 25.04.2 and 26.08.2 sources. That comparison supports the source discussion but does not establish later-version execution, GUI-cell behavior or other locales.