All -
I have a (necessarily) complex spreadsheet with some associated data tables for running senstivities. The need to run these sensitivities is only occasional. The spreadsheet is being used by a range of people in different organisations.
'Automatic recalculation except datatables' works fine to keep calc times reasonable. However, the other users are reporting instability when they save. Obviously Excel recalcs the datatables on save, and I think if the user has other spreadsheets open, these may all get recalculated too. I'm not sure if this is actually causing instability, but I can certainly believe the long calc time is giving the perception of a freeze.
There are various options I can think of, but they all have weaknesses:
- Teach the various users to hit 'escape' to stop the recalc-on-save (though my own experience is that this can genuinely lead to a crash)
- Switch to pure manual recalculation, with no recalc on save (though this is error prone for the user, and anyway just means that they have to take the 'full recalc' hit in the middle of their work, rather than on saving)
- Apply some VBA (though I'm not sure the various organisations where the users are will allow them to run VBA)
So I was wondering whether there was a way to temporarily 'neutralise' the datatables via formula. My thought was to set up the datatable output cells along the lines of
=IF(data_tables_live, interesting_result, NA())
The idea was that if cell data_table_live was set to FALSE, then the cell feeding the datatable would not depend on the rest of the spreadsheet, and recalc would be fast. However, some experimentation suggests this doesn't work. Either Excel recalcs the entire spreadsheet by default for each cell in a datatable, or the dependency tree doesn't take advantage of the branching of the IF statement into a deadend in this case.
Is there another way to have a 'switch' for the datatables within the spreadsheet that will isolate them from recalc in a similar manner? Or indeed some other better solution I haven't thought of?
Thanks very much for your help
Rob
Bookmarks