Permanent Iterative Calculation

Neuner

New Member
Joined
Jul 18, 2018
Messages
18
I have several spreadsheets that require the 'Enable Iterative Calculation' to be selected in order to work correctly. Our business calcs require circular calculations on almost every sheet.

Once I have this option checked, it stays active but only for me. It does not stay checked for my co-workers and it has become very frustrating for them.

Is there a way to permanently keep the iteration calculation option active? Any programming that could run in the background to make it permanent?

Thank you!
 

Excel Facts

Copy a format multiple times
Select a formatted range. Double-click the Format Painter (left side of Home tab). You can paste formatting multiple times. Esc to stop

jmacleary

Well-known Member
Joined
Oct 5, 2015
Messages
1,060
Office Version
  1. 365
  2. 2007
Platform
  1. Windows
Hi there. Simply put Application.Iteration = True

in wherever you want it to be forced (workbook open macro, or worksheet activate etc.). Bear in mind that this will change the users application settings (i.e. for all workbooks from then on). You may want to consider capturing the current setting in a global variable, and resetting it when your workbook is closed.
 
Last edited:
Upvote 0

Neuner

New Member
Joined
Jul 18, 2018
Messages
18
You may want to consider capturing the current setting in a global variable, and resetting it when your workbook is closed.

Thank you John! Sorry but I'm not sure what you mean by this. I think having it reset when the workbook is closed is a good idea but I'm not sure what you mean by global variable or how to do this.
 
Upvote 0

jmacleary

Well-known Member
Joined
Oct 5, 2015
Messages
1,060
Office Version
  1. 365
  2. 2007
Platform
  1. Windows
Hello again - no need to apologise, I should have made it clearer. Copy all the code below into your vba code in the ThisWorkbook (From the developer tab select Visual Basic then find the entry for ThisWorkbook (it will be at the end of the list of sheets).

This code will copy the current state of iteration when the workbook is opened, and reset it before the workbook is closed.

Code:
Public SaveIteration As Boolean

Private Sub Workbook_Open()
SaveIteration = Application.Iteration
Application.Iteration = True
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Iteration = SaveIteration

End Sub
 
Last edited:
Upvote 0

Forum statistics

Threads
1,195,592
Messages
6,010,621
Members
441,558
Latest member
lambierules

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Top