The main functionality of Calc is to do complex spreadsheet calculations. Some spreadsheet formulas may take a lot of time to run in case the data source is large. Although the recent version of LibreOffice enabled Threaded Calculation, there are still cases when the calculation hangs. As a result, we should provide a way to let the user decide when to cancel / terminate the calculation process. Otherwise, the only way to stop the calculation is to kill the process, which will cause dataloss. Microsoft Excel already has this functionality, at least in its MSO 2010 version. Steps to Reproduce: 1. Set complex formulas (vlookup, offset, match, sumifs...) in Calc with large dataset. 2. Hit ESC key (or other defined keys) should terminate the calculation. Already calculated results may be kept "as-is", or cleared.
Meanwhile, you can disable Menu/Data/Calculate/Autocalculate.
as an enhancement, it makes sense, not sure whether it will ever be implemented though
(In reply to Kevin Suo from comment #0) > Microsoft Excel already has this functionality, at least in its MSO 2010 > version. I have no MS Excel, can you please confirm some detail I am curious about? Assume we have sat through a long formula fill of e.g. 60000 rows. Then we change the formula on the top, double click the fill handle to change all already calculated cells to the new formula, but half-way through hit the designated calculation cancel button (e.g. ESC). Is the result that half the cells have changed and the other half is unchanged or is Excel doing a ROLLBACK? If this is implemented in LO, I would prefer to get a dialog asking what to do: (1)just abort the calculation and leave the mixed data (2)clear the remaining cells (3)ROLLBACK (4)continue TBH, I am not sure (2) is really useful, but it is easy to find how far it got. If I intentionally tried to cancel the calculation, I most likely realized that the formula was still not right and want the fastest way getting a responsive spreadsheet again, which probably would be (1)
(In reply to s5t1e3v4e3m11@hotmail.com from comment #3) I prepared a excel file with the following contents: Sheet1: ID Value1 Value2 Value3 Value4 Value5 1 1 2 3 4 5 2 2 3 4 5 6 3 3 4 5 6 7 ... 890361 890361 890362 890363 890364 890365 Sheet2: ID Value5 1 =vlookup(A1, Sheet1.A:F, 6,0) 2 3 ... 890361 Then I fill down the formula in Sheet2 and immediately hit ESC. In Excel, after I hit ESC, it immediately stopped the fill operation, but it for the cells which were already filled with formula the calculation goes on. Also, I noticed that when I click the save icon, during the save process I have an option of hitting ESC to cancel. Actually, what the ESC do seems to be related to what task is to be canceled, see: https://docs.microsoft.com/en-us/office/vba/api/Excel.Application.EnableCancelKey
Created attachment 170616 [details] Screencast in Win10 with Excel 2019