How to Schedule Daily Automatic Recalculation in Excel Without Changing Data
Question details
The user wants to automatically trigger a daily recalculation of an Excel workbook to update data or formulas without manually editing any business data.
- Product
- Excel
- Device & OS
- Windows
- Scenario
- Automating daily spreadsheet formula refreshes for dashboards, time-sensitive data, or reporting without user intervention.
- Observed behavior
- Formulas need a recalculation trigger to reflect current data, which currently requires manual intervention or data modification.
Verify your Windows power settings to ensure your computer is either kept awake or configured to wake from sleep mode at the scheduled time, as hibernation will prevent automated tasks from running.
Automate Recalculation Using VBA and Windows Task Scheduler
Create a simple VBA script to trigger calculation upon opening the file, and schedule it to run daily using the Windows Task Scheduler.
This method utilizes a built-in macro command to refresh your entire workbook. Combined with Windows Task Scheduler, the file will automatically open and execute the calculation command at your designated time.
Open your workbook in Excel, press ALT + F11 to open the VBA Editor. Double-click 'ThisWorkbook' in the Project Explorer and enter the code: Private Sub Workbook_Open() Application.Calculate End Sub.
Save your file as an Excel Macro-Enabled Workbook (.xlsm) so the VBA script is preserved and allowed to run when the file opens.
Press the Windows key, search for 'Task Scheduler', and open it. Click 'Create Basic Task' in the right-hand panel and give it a name like 'Daily Excel Recalc'.
Set the trigger to 'Daily', choose the specific time you want the recalculation to happen, and proceed to the 'Action' screen.
Select 'Start a program'. In the Program/script box, type 'excel.exe'. In the 'Add arguments' field, enter the full file path of your .xlsm workbook wrapped in quotation marks. Click Finish.
Trigger Recalculation by Toggling a Helper Cell
A simple manual workaround that forces Excel's calculation engine to refresh all formulas by changing a non-critical cell value.
Automate Your Workbooks with WPS Spreadsheet
WPS Spreadsheet provides robust support for VBA macros, allowing you to easily run scheduled recalculations and automate your daily workflows just as you would in Microsoft Excel.
- 1. Install WPS Office: Download and install WPS Office, which includes WPS Spreadsheet.
- 2. Enable the Developer Tab: Open your workbook, navigate to the Options menu, and enable the Developer tab to access the built-in VBA Editor.
- 3. Implement the Macro: Use the VBA Editor to insert the Application.Calculate script on workbook open, saving your automated file seamlessly.

Frequently Asked Questions
Why didn't my scheduled Excel recalculation run overnight?
If your Windows computer goes to Sleep or Hibernate mode, scheduled actions cannot run. You must either leave the computer awake or check 'Wake the computer to run this task' in the Task Scheduler task properties.
Do I need to save my file in a specific format for VBA recalculation?
Yes. Whenever you add a VBA macro (such as an automatic recalculation script upon opening), you must save your file as an Excel Macro-Enabled Workbook (.xlsm). If saved as a standard .xlsx, the macro will be removed.
Can I calculate just one specific worksheet instead of the entire workbook?
Yes. In your VBA code, replace 'Application.Calculate' with 'Worksheets("YourSheetName").Calculate'. This targets the recalculation process exclusively to the designated sheet.




