← All functions

MDETERM

Supported, behaves as documented

Category: Math and trigonometry · Last tested 2026-09-01

Real compatibility results for the MDETERM function: executed in Excel for the web, Google Sheets and LibreOffice Calc, with desktop Excel behavior from Microsoft’s official documentation (we do not run desktop Excel — Excel for the web is a different application and is executed separately). Syntax and links to that documentation are below.

Support matrix

EngineDocumentedLive-testedVerdict
Excel (desktop)Yes No — documented only n/a
Excel for the web— Yes (recalc, 2026-09-01) Supported, behaves as documented
Google SheetsYes Yes (Drive import, 2026-08-31) Supported, behaves as documented
LibreOffice CalcYes Yes (25.8.7.3, 2026-08-31) Supported, behaves as documented

LibreOffice version history

We executed the same test cases under each LibreOffice release to show exactly when MDETERM’s support changed — not documentation claims, real results.

LibreOffice versionVerdictTested
24.2.0.3 Supported, behaves as documented 2026-08-31
24.8.7.2 Supported, behaves as documented 2026-08-31
25.2.0.3 Supported, behaves as documented 2026-08-31
25.8.7.3 Supported, behaves as documented 2026-08-31

Executed test cases

Excel for the web (executed 2026-09-01 via OneDrive recalculation)

These values come from Excel for the web, not from desktop Excel. They are two different implementations of the calculation engine, and this run measured only the web one: the corpus was uploaded to OneDrive as .xlsx, recalculated by Excel for the web on open, and downloaded again for readback. Excel for the web is a rolling service with no pinnable version, so the run is identified by its date. Where a value here disagrees with the Expected column — which is Microsoft’s documentation of the desktop product — we cannot tell you whether the web engine diverges from the desktop one or the documentation is wrong about both, because we do not run desktop Excel.

FormulaDescriptionResultExpectedVerdict
=MDETERM(A2:D5) Microsoft's first documented worked example: the determinant of a 4x4 range 87.99999999999997 88
Provenance

Microsoft publishes '=MDETERM(A2:D5)' with the result 88 for the 4x4 block {1,3,8,5; 1,3,6,1; 1,1,1,0; 7,3,10,2}. Derived independently by cofactor expansion in EXACT INTEGER arithmetic -- Python ints, no floating point anywhere, no numpy or other linear-algebra library -- which gives exactly 88. Integer arithmetic matters here: the page itself warns that "MDETERM is calculated with an accuracy of approximately 16 digits, which may lead to a small numeric error when the calculation is not complete", so an exact reference value is the only way to tell a correct answer from a nearly correct one.

Matched
=MDETERM({3,6,1;1,1,0;3,10,2}) Microsoft's second documented worked example: the same function given an array constant 0.9999999999999998 1
Provenance

Microsoft publishes '=MDETERM({3,6,1;1,1,0;3,10,2})' with the result 1. Verified by exact cofactor expansion: 3(1*2 - 0*10) - 6(1*2 - 0*3) + 1(1*10 - 1*3) = 6 - 12 + 7 = 1. The case is carried separately from the range form because the page documents both input forms explicitly ("Array can be given as a cell range, for example, A1:C3; as an array constant, such as {1,2,3;4,5,6;7,8,9}; or as a name to either of these") and an engine can support one and not the other.

Matched
=MDETERM({3,6;1,1}) Microsoft's third documented worked example: a 2x2 array constant -3 -3
Provenance

Microsoft publishes '=MDETERM({3,6;1,1})' with the result -3. Exact: 3*1 - 6*1 = -3. The smallest non-trivial determinant, and a negative one, so a sign error cannot hide.

Matched
=MDETERM({1,3,8,5;1,3,6,1}) Microsoft's fourth documented worked example: a 2x4 array, which is not square #VALUE! #VALUE!
Provenance

Microsoft publishes '=MDETERM({1,3,8,5;1,3,6,1})' with the result #VALUE! and the description "Returns an error because the array does not have an equal number of rows and columns". The page states the rule twice, listing "Array does not have an equal number of rows and columns" among the conditions under which "MDETERM returns the #VALUE! error". One of the few places where Microsoft publishes an ERROR as a worked example's result.

Matched
=MDETERM(A2:B3) A square range in which one cell holds text, which the page excludes #VALUE! #VALUE!
Provenance

Excel documents: "MDETERM returns the #VALUE! error when: Any cells in array are empty or contain text." A2 holds the text "a" while the other three cells are numbers, so the array is square and the only defect is the text cell.

Matched
=MDETERM({1,2;2,4}) A singular matrix, whose determinant is exactly zero 0 0
Provenance

Exact: 1*4 - 2*2 = 0, since the second row is twice the first. Asserted because the page singles this case out as the one where its 16-digit accuracy shows: "the determinant of a singular matrix may differ from zero by 1E-16". The corpus compares numbers with a 1e-9 tolerance, so a result of 1E-16 still counts as zero here -- what this case would catch is an engine whose singular determinant is wrong by more than that.

Matched

Google Sheets (executed 2026-08-31 via Drive import)

Google Sheets is a rolling service with no pinnable version, so this run is identified by its date. The corpus was imported to Drive as .xlsx, recalculated by Sheets, and exported back for readback.

FormulaDescriptionResultExpectedVerdict
=MDETERM(A2:D5) Microsoft's first documented worked example: the determinant of a 4x4 range 88 88
Provenance

Microsoft publishes '=MDETERM(A2:D5)' with the result 88 for the 4x4 block {1,3,8,5; 1,3,6,1; 1,1,1,0; 7,3,10,2}. Derived independently by cofactor expansion in EXACT INTEGER arithmetic -- Python ints, no floating point anywhere, no numpy or other linear-algebra library -- which gives exactly 88. Integer arithmetic matters here: the page itself warns that "MDETERM is calculated with an accuracy of approximately 16 digits, which may lead to a small numeric error when the calculation is not complete", so an exact reference value is the only way to tell a correct answer from a nearly correct one.

Matched
=MDETERM({3,6,1;1,1,0;3,10,2}) Microsoft's second documented worked example: the same function given an array constant 1 1
Provenance

Microsoft publishes '=MDETERM({3,6,1;1,1,0;3,10,2})' with the result 1. Verified by exact cofactor expansion: 3(1*2 - 0*10) - 6(1*2 - 0*3) + 1(1*10 - 1*3) = 6 - 12 + 7 = 1. The case is carried separately from the range form because the page documents both input forms explicitly ("Array can be given as a cell range, for example, A1:C3; as an array constant, such as {1,2,3;4,5,6;7,8,9}; or as a name to either of these") and an engine can support one and not the other.

Matched
=MDETERM({3,6;1,1}) Microsoft's third documented worked example: a 2x2 array constant -3 -3
Provenance

Microsoft publishes '=MDETERM({3,6;1,1})' with the result -3. Exact: 3*1 - 6*1 = -3. The smallest non-trivial determinant, and a negative one, so a sign error cannot hide.

Matched
=MDETERM({1,3,8,5;1,3,6,1}) Microsoft's fourth documented worked example: a 2x4 array, which is not square #VALUE! #VALUE!
Provenance

Microsoft publishes '=MDETERM({1,3,8,5;1,3,6,1})' with the result #VALUE! and the description "Returns an error because the array does not have an equal number of rows and columns". The page states the rule twice, listing "Array does not have an equal number of rows and columns" among the conditions under which "MDETERM returns the #VALUE! error". One of the few places where Microsoft publishes an ERROR as a worked example's result.

Matched
=MDETERM(A2:B3) A square range in which one cell holds text, which the page excludes #VALUE! #VALUE!
Provenance

Excel documents: "MDETERM returns the #VALUE! error when: Any cells in array are empty or contain text." A2 holds the text "a" while the other three cells are numbers, so the array is square and the only defect is the text cell.

Matched
=MDETERM({1,2;2,4}) A singular matrix, whose determinant is exactly zero 0 0
Provenance

Exact: 1*4 - 2*2 = 0, since the second row is twice the first. Asserted because the page singles this case out as the one where its 16-digit accuracy shows: "the determinant of a singular matrix may differ from zero by 1E-16". The corpus compares numbers with a 1e-9 tolerance, so a result of 1E-16 still counts as zero here -- what this case would catch is an engine whose singular determinant is wrong by more than that.

Matched

LibreOffice Calc 25.8.7.3 (tested 2026-08-31)

FormulaDescriptionResultExpectedVerdict
=MDETERM(A2:D5) Microsoft's first documented worked example: the determinant of a 4x4 range 88 88
Provenance

Microsoft publishes '=MDETERM(A2:D5)' with the result 88 for the 4x4 block {1,3,8,5; 1,3,6,1; 1,1,1,0; 7,3,10,2}. Derived independently by cofactor expansion in EXACT INTEGER arithmetic -- Python ints, no floating point anywhere, no numpy or other linear-algebra library -- which gives exactly 88. Integer arithmetic matters here: the page itself warns that "MDETERM is calculated with an accuracy of approximately 16 digits, which may lead to a small numeric error when the calculation is not complete", so an exact reference value is the only way to tell a correct answer from a nearly correct one.

Matched
=MDETERM({3,6,1;1,1,0;3,10,2}) Microsoft's second documented worked example: the same function given an array constant 1 1
Provenance

Microsoft publishes '=MDETERM({3,6,1;1,1,0;3,10,2})' with the result 1. Verified by exact cofactor expansion: 3(1*2 - 0*10) - 6(1*2 - 0*3) + 1(1*10 - 1*3) = 6 - 12 + 7 = 1. The case is carried separately from the range form because the page documents both input forms explicitly ("Array can be given as a cell range, for example, A1:C3; as an array constant, such as {1,2,3;4,5,6;7,8,9}; or as a name to either of these") and an engine can support one and not the other.

Matched
=MDETERM({3,6;1,1}) Microsoft's third documented worked example: a 2x2 array constant -3 -3
Provenance

Microsoft publishes '=MDETERM({3,6;1,1})' with the result -3. Exact: 3*1 - 6*1 = -3. The smallest non-trivial determinant, and a negative one, so a sign error cannot hide.

Matched
=MDETERM({1,3,8,5;1,3,6,1}) Microsoft's fourth documented worked example: a 2x4 array, which is not square #VALUE! #VALUE!
Provenance

Microsoft publishes '=MDETERM({1,3,8,5;1,3,6,1})' with the result #VALUE! and the description "Returns an error because the array does not have an equal number of rows and columns". The page states the rule twice, listing "Array does not have an equal number of rows and columns" among the conditions under which "MDETERM returns the #VALUE! error". One of the few places where Microsoft publishes an ERROR as a worked example's result.

Matched
=MDETERM(A2:B3) A square range in which one cell holds text, which the page excludes #VALUE! #VALUE!
Provenance

Excel documents: "MDETERM returns the #VALUE! error when: Any cells in array are empty or contain text." A2 holds the text "a" while the other three cells are numbers, so the array is square and the only defect is the text cell.

Matched
=MDETERM({1,2;2,4}) A singular matrix, whose determinant is exactly zero 0 0
Provenance

Exact: 1*4 - 2*2 = 0, since the second row is twice the first. Asserted because the page singles this case out as the one where its 16-digit accuracy shows: "the determinant of a singular matrix may differ from zero by 1E-16". The corpus compares numbers with a 1e-9 tolerance, so a result of 1E-16 still counts as zero here -- what this case would catch is an engine whose singular determinant is wrong by more than that.

Matched

Docs & syntax