Forum Discussion
Shift+F9 is now cleaning dirty cells (after an update from version 2305 to 2308)
- Jan 23, 2024
Just to update on this, we have confirmed (via Microsoft Premier Support) that this is indeed a deliberate change to the Shift+F9 behavior. We'll have to consider our options for users relying on the old behavior.
I guess Charles should eventually update the decisionmodels page, and also this one:
https://learn.microsoft.com/en-us/office/vba/excel/concepts/excel-performance/excel-improving-calculation-performance#calculating-workbooks-worksheets-and-ranges
- Mark_KaplowitzJan 23, 2024Copper Contributor
Just to update on this, we have confirmed (via Microsoft Premier Support) that this is indeed a deliberate change to the Shift+F9 behavior. We'll have to consider our options for users relying on the old behavior.
I guess Charles should eventually update the decisionmodels page, and also this one:
https://learn.microsoft.com/en-us/office/vba/excel/concepts/excel-performance/excel-improving-calculation-performance#calculating-workbooks-worksheets-and-ranges- JKPieterseJan 25, 2024Silver ContributorThanks for sharing this with us Mark.
- fastexcelJan 25, 2024Brass Contributor
I think this is a bug - looks like off-sheet dependencies do not get dirtied when they should.
- Mark_KaplowitzJan 26, 2024Copper Contributor
Thanks very much for replying Charles.
I'm not seeing that behavior with cross-sheet dependencies (but perhaps don't understand exactly what you mean).
Fyi, the Excel performance: Improving calculation performance page has now been updated to reflect the new behavior.
What used to read:
You can also recalculate only the selected worksheets by using Shift+F9. This does not resolve any dependencies between worksheets, and does not reset dirty cells as calculated.
is now:
You can also recalculate only the selected worksheets by using Shift+F9. This resolves dependencies for the worksheet and resets all previously uncalculated (dirty) cells as calculated.
In previous versions of Excel, the behavior was different and dirty cells were not set as calculated after the calculation completed. If user-defined functions relied on this behavior, these functions should be made volatile instead, as explained in the Volatile functions section in this article.