What can I do make the cells not recalculate on page load?
Very simple, turn Iterative calculation
on. Name a cell freeze
and put a checkbox. Then apply this to the beginning of any formula you want to be able to freeze.
A1 should be the address of the cell you are in (a circular reference) rand() is just a placeholder you can put any formula you want.
=if(freeze,A1,rand())
If you have formulas that output to multiple cells you will have to create a helper cell for each one of them to "compact" the output into a single cell and use the second cell to "extract" them into multiple cells due to a glitch in how Google Sheets is able to detect circular references.