如何通过VBA临时关闭Excel自动备份功能,操作完成后再恢复?
临时关闭Excel自动备份解决方案
首选VBA实现方案
你需要关闭的是Excel内置的「自动恢复保存」功能,对应VBA中可通过Application.AutoRecover.Time参数控制,以下是可直接使用的代码:
使用步骤
- 按
Alt+F11打开VBA编辑器,右键点击当前工作簿名称,选择「插入」-「模块」 - 将以下两段代码复制到模块中
- 开始修改操作前运行
临时关闭自动备份宏,全部操作完成后运行恢复自动备份宏即可
代码片段
Sub 临时关闭自动备份() ' 存储原有自动备份间隔配置,便于后续还原 ThisWorkbook.Names.Add Name:="ori_backup_interval", RefersTo:=Application.AutoRecover.Time, Visible:=False ' 设为0即关闭自动备份功能 Application.AutoRecover.Time = 0 MsgBox "自动备份已临时关闭" End Sub
Sub 恢复自动备份() On Error Resume Next Dim ori_interval As Integer ' 读取存储的原有配置 ori_interval = Replace(ThisWorkbook.Names("ori_backup_interval").Value, "=", "") If ori_interval > 0 Then Application.AutoRecover.Time = ori_interval Else ' 未读取到原有配置时默认恢复为10分钟间隔,可按需调整数值 Application.AutoRecover.Time = 10 End If ' 清理临时存储的配置项 ThisWorkbook.Names("ori_backup_interval").Delete MsgBox "自动备份已恢复原有配置" End Sub
注意事项
- 该配置修改对当前打开的整个Excel应用生效,不是仅作用于单个工作簿,操作结束后务必运行恢复宏,避免后续Excel丢失自动备份能力
- 若操作过程中Excel意外崩溃,可手动进入「文件-选项-保存」页面重新配置自动恢复间隔
备选手动方案
无需代码可直接操作:
- 打开Excel左上角「文件」-「选项」-「保存」设置页
- 取消「保存自动恢复信息时间间隔」的勾选,或把间隔值调整为最大的120分钟
- 完成所有修改操作后,回到该页面恢复原有配置即可
内容的提问来源于stack exchange,提问作者awsmitty
相关产品推荐
相关产品推荐

