Description: Consider the following spreadsheet with 2 columns and 6 rows: symbol price a 10 b 20 a 30 =DSUM ( A1:B4, "price", {"symbol";"a"} ) =DSUM ( A1:B4, "price", {"symbol";A2} ) The SearchCriteria of the first DSUM is hard coded to the value "a", and the expression evaluates correctly to 40. The SearchCriteria of the second DSUM refers to the cell A2. The value of A2 is "a". However, this expression causes an error: "Err:512". It would be nice if Calc could correctly evaluate the second DSUM expression. Aside: The second DSUM expression does evaluate correctly inside a GoogleDocs Spreadsheet. Steps to Reproduce: Recreate the example spreadsheet in the description. Actual Results: Err:512 Expected Results: 40 Reproducible: Always User Profile Reset: No Additional Info: User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/53.0.2785.143 Chrome/53.0.2785.143 Safari/537.36
It happens with all inner arrays, not only with DSUM.
In LibreOffice inline arrays may only have constant number or constant string but no reference. There is this note in the spec, <quote> Note: Expression authors should be aware that use of Expression other than constant Number or constant String may impair interoperability. </quote> Nevertheless it is allowed in ODF. Therefore a valid enhancement request. I change the summary to reflect, that it is not a problem with the DSUM function but with inline arrays.
Thanks for the light on the issue.
*** Bug 130722 has been marked as a duplicate of this bug. ***
https://bugs.documentfoundation.org/show_bug.cgi?id=126573#c41 https://ask.libreoffice.org/t/draw-the-mandelbrot-set-in-libreoffice-calc-using-only-formulae/107400/3
https://ask.libreoffice.org/t/draw-the-mandelbrot-set-in-libreoffice-calc-using-only-formulae/107400/3
Workaround: instead of {"symbol";A2} use INDIRECT({"A1";"A2"}).