Kaydet (Commit) 956782b8 authored tarafından Eike Rathke's avatar Eike Rathke Kaydeden (comit) Norbert Thiebaud

Resolves: tdf#95395 force range reference to array only in array formula, also tdf#95419

... and not already if the function has a (ReferenceOr)ForceArray type
parameter somewhere else in the parameter list.

Regression triggered by commit 01eea7fe
for MATCH, HLOOKUP and VLOOKUP first parameter, but behavior already
present since OOo for LOOKUP; FORECAST in its first parameter, PROB,
LINEST, LOGEST and TTEST in the last two parameters.

Change-Id: I4a30ea3362f86274a048b0e3f47fa12da3001a3a
(cherry picked from commit b5cd11b4)
Reviewed-on: https://gerrit.libreoffice.org/19659Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarNorbert Thiebaud <nthiebaud@gmail.com>
üst 52f3eb47
......@@ -1399,7 +1399,13 @@ bool ScInterpreter::ConvertMatrixParameters()
ScParameterClassification::Type eType =
ScParameterClassification::GetParameterType( pCur, nParams - i);
if ( eType != ScParameterClassification::Reference &&
eType != ScParameterClassification::ReferenceOrForceArray)
eType != ScParameterClassification::ReferenceOrForceArray &&
// For scalar Value: convert to Array/JumpMatrix
// only if in array formula context, else (function
// has ForceArray or ReferenceOrForceArray
// parameter *somewhere else*) pick a normal
// position dependent implicit intersection later.
(eType != ScParameterClassification::Value || bMatrixFormula))
{
SCCOL nCol1, nCol2;
SCROW nRow1, nRow2;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment