MIRR Function (OpenOffice Calc)
Calculate periodic MIRR in Apache OpenOffice Calc. Separate financing and reinvestment rates, preserve zero periods and reconcile terminal and present values.
Verification status: Eight ordinary reference formulas were recalculated in Apache OpenOffice 4.1.16 on Linux x86-64, Build 9816, through generated native ODF and GUI hard recalculation. Saved identities, inputs and results were checked. How formula examples are checked
Quick answer: =MIRR(F10:F14;.1;.1) returned 0.119230598752 in the tested Apache OpenOffice 4.1.16 build. Use the numeric worksheet setup below for these range addresses.
Availability and version history
- Introduced: First release not established; documented by OpenOffice.org 3.3.
- Supported in: Apache OpenOffice 4.1.16; this is a verified release, not a final supported version.
- Scope: Desktop Calc, English function names and semicolon-separated formulas.
- Checked: October 14, 2026. Eight ordinary reference formulas were recalculated from generated ODF in 4.1.16 on Linux x86-64, Build 9816. Source and independent arithmetic were checked.
What MIRR returns
MIRR combines the present value of negative periodic cash flows with the terminal value of positive cash flows, then solves one equivalent per-period rate. The first range entry is at time zero. It uses separate financing and reinvestment assumptions instead of solving the ordinary IRR equation. Release implementation.
Syntax and arguments
MIRR(Values;FinanceRate;ReinvestRate)
- Values: required worksheet range in chronological equal-period order, including at least one positive and one negative cash flow for the ordinary model.
- FinanceRate: discount rate used for negative flows.
- ReinvestRate: rate used to accumulate positive flows.
- Exactly three arguments are required; rates must use the same period length as the range.
Numeric worksheet setup
Enter each value in the stated cell. Dates in G10:G14 are numeric date serials with the December 30, 1899 origin; format them as dates if desired. J12:J14 are unused.
| Row | F: ordinary flows | G: date serial and interpretation | H: delayed receipt | I: two investments | J: two flows |
|---|---|---|---|---|---|
| 10 | −1000 | 45292 (2024-01-01) | −1000 | −1000 | −1000 |
| 11 | 200 | 45474 (2024-07-01) | 0 | −100 | 1100 |
| 12 | 300 | 45658 (2025-01-01) | 0 | 300 | — |
| 13 | 400 | 45839 (2025-07-01) | 0 | 500 | — |
| 14 | 500 | 46023 (2026-01-01) | 1500 | 700 | — |
MIRR treats each successive row as one equal period; it does not use column G. XNPV uses the actual date differences in G. Keep these timing models distinct.
Eight reproducible examples
The native column contains saved 4.1.16 results; independent references use high-precision arithmetic and the stated source rules. Values are shown to twelve decimal places where needed. The range examples use the numeric setup above.
| Formula | Native 4.1.16 result | Independent reference |
|---|---|---|
=MIRR(F10:F14;.1;.1) |
0.119230598752 |
0.119230598752 |
=MIRR(F10:F14;.05;.08) |
0.11287554841 |
0.11287554841 |
=MIRR(F10:F14;0;0) |
0.087757305937 |
0.087757305937 |
=MIRR(H10:H14;.1;.1) |
0.1066819197 |
0.1066819197 |
=MIRR(I10:I14;.1;.1) |
0.102710351927 |
0.102710351927 |
=MIRR(I10:I14;.05;.08) |
0.097657079521 |
0.097657079521 |
=MIRR(J10:J11;.1;.1) |
0.1 |
0.1 |
=MIRR(F10:F13;.1;.1) |
-0.009421825332 |
-0.009421825332 |
Practical worksheet
For −1000, 200, 300, 400, 500 with both rates at 10%, MIRR is approximately 0.119230598752, or 11.9230598752% per period. There are five cash flows but four intervals between the first and last.
The positive flows accumulate to 200×1.1³+300×1.1²+400×1.1+500=1569.2 at the final time. The initial negative present value has magnitude 1000, so (1569.2/1000)^(1/4)-1 independently gives the result.
Advanced interpretation and checks
With both rates zero, the same series gives (1400/1000)^(1/4)-1≈0.087757305937. The range −1000,0,0,0,1500 gives (1500/1000)^(1/4)-1≈0.106681919700: explicit zeros preserve elapsed periods.
For the two-investment series −1000,−100,300,500,700, FinanceRate affects the discounted magnitude of the second negative flow. ReinvestRate separately affects the terminal value of receipts. Changing one assumption is not equivalent to changing both. The two-cash-flow example −1000,1100 returns 10% over its single interval.
Boundaries and troubleshooting
Use at least two numeric observations, both cash-flow signs, valid rates and a clearly defined interval. The source walks the range’s numeric values; blank or text cells were not part of the native fixture, so keep explicit numeric zero when a period must remain in the sequence.
The tested financing and reinvestment rates are nonnegative. Invalid rate domains, missing signs, one-cell ranges and imported text conversions were not executed. For irregular actual dates, XNPV or an appropriate dated-return model uses different timing. A computed MIRR depends on the assumed reinvestment rate; it does not prove that reinvestment will be available at that rate.
Related functions
Official evidence and checking scope
The generated ODF produced the informational load warning “Not all attributes could be read.” The sheet was hard-recalculated and saved separately. All eight ordinary function identities, inputs and results were reconciled; a stale SUM cache changed from 999999 to 3 and an uncached SUM returned 7. This establishes the stated examples, not every workbook style or invalid input. Other explanatory identities are independent calculations. The authoring-tool XLSX was not executed in OpenOffice, and its preview values are not the native results reported here.