Resolves: tdf#98844 calculate as shown with SUM() again
Change-Id: I0032bdb9a8f54baa2e599861e45691a255f45275
Reviewed-on: https://gerrit.libreoffice.org/78708
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
diff --git a/sc/source/core/tool/interpr6.cxx b/sc/source/core/tool/interpr6.cxx
index cbeaa8a..3a77be2 100644
--- a/sc/source/core/tool/interpr6.cxx
+++ b/sc/source/core/tool/interpr6.cxx
@@ -817,8 +817,12 @@ void ScInterpreter::IterateParameters( ScIterFunc eFunc, bool bTextAsZero )
if ( nGlobalError != FormulaError::NONE )
nGlobalError = FormulaError::NONE;
}
else if ( ( eFunc == ifSUM || eFunc == ifCOUNT ) && mnSubTotalFlags == SubtotalFlags::NONE )
else if (((eFunc == ifSUM && !bCalcAsShown) || eFunc == ifCOUNT )
&& mnSubTotalFlags == SubtotalFlags::NONE)
{
// Use fast span set array method.
// ifSUM with bCalcAsShown has to use the slow bells and
// whistles ScValueIterator below.
sc::RangeColumnSpanSet aSet( aRange );
if ( eFunc == ifSUM )