https://bugs.documentfoundation.org/show_bug.cgi?id=96222

            Bug ID: 96222
           Summary: Simple matrix formulas give wrong results when calc
                    file saved in .ods is reopened
           Product: LibreOffice
           Version: 5.0.3.2 release
          Hardware: x86-64 (AMD64)
                OS: Windows (All)
            Status: UNCONFIRMED
          Severity: normal
          Priority: medium
         Component: Calc
          Assignee: libreoffice-bugs@lists.freedesktop.org
          Reporter: silva...@katamail.com

Created attachment 120983
  --> https://bugs.documentfoundation.org/attachment.cgi?id=120983&action=edit
The ods file where matrix formulas give wrong zeroes as results

Open the file Dagum Prova.ods. In the cells H21:H261 (in bold red to be easy to
find) there are simple matrix formulas like this:

=8000*SOMMA(D$22:D37*F$22:F37/10)/H$20

they basically sums elements of a product vector, a very easy and commonplace
operation. 

Results in this case should give a vector of increasing values from 0 to 1.
This is what they gave when created; however after you save the file in .ods
format and reopen it, correct results are gone and you have a vector of zeros
instead (which is plainly wrong).

Notice that if you save the file in .xls format such corruption does NOT take
place: you can check this by opening the file Dagum prova.xls, which is exactly
the same file but saved as XLS.

The results of formulas in the red columns are mirrored also in the chart
placed to the left of the column (line in red shows the data. Again, the graph
is correct in XLS but not in ODS where it shows the wrong zeros vector.

To again obtain the correct results in the ODS file is not simple nor
straightforward: no F9 or ctrl+shift+F9 will do. Even if you reopen for editing
the first formula in H22, change something and then change it again (e.g. add
and delete a space) and input the formula, finally pasting it to the rest of
the vector, you are stuck with the zeros.

A workaround I managed to find is this:
- do the re-editing of the first cell as above, then copy it;
- paste it in the single cell immediately below it (H23);
- select the two cells H22:H23 and copy them;
- select the rest of the red vector and paste the copied range  H22:H23 into
it.

This way your formulas show the correct results again, and these stay on until
you keep the file open, even if re-computed. But when you save it in .ODS,
close and reopen, there you are again with the zeroes vector.

Of course there could be other workarounds.  
While fiddling with the problem, I found out other strange behaviour: suppose
you have the zeroes vector after reopening the saved ODS file. 
Now reopen for editing a cell in the middle of the vector (say H46 for
example), add a space at the end, delete it and re-input the formula with
ctrl+shift+enter: with a fully erratic behaviour, you will now get correct
results not only in H46, but also in all vector cells above it!! Even if you
did not touch any of the H22:H45 range! At the same time the vector cells below
stay with the wrong zeroes instead.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
Libreoffice-bugs@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to