VBA 定期保存 Excel 和 Word 中的文档(自动备份)

VBA 定期保存 Excel 和 Word 中的文档(自动备份)

我想创建一个 VBA 脚本,每隔 5-10 分钟用新名称保存一份文档副本。该脚本将在同一文件夹中保存 10-15 份副本,每次增加一个数字。如果达到最大保存次数,它应该删除最旧的副本。

例如:

document.xlsx - Working copy.  
document_b1.xlsx - First backup, done after 5 minutes.  
document_b2.xlsx - Second backup, after 10 minutes.  

以此类推。
当最后的这个数字达到 15 时,脚本应该重命名其余的。
即:

document_b15 - gets deleted.  
document_b14 -> document_b15  
document_b13 -> document_b14  
...  
document_b1 - new copy. 

什么样的函数可以完成所需的步骤?
VBA 需要的简短列表:

  • 增加有价值的
  • 重命名文件
  • 删除文件
  • 将当前文档保存为新文件

我知道该问题来自 Stackoverflow。关于编程部分。
但我想使用现有的解决方案,而不是从头开始学习 VBA。

是否有 VBA 可以帮我完成这项工作?

答案1

我为 Excel 编写了一个快速自动备份插件。
您能测试一下并报告错误吗?如有必要,我会改进它。

安装

  1. 下载加入
  2. 保存于C:\Documents and Settings\USERNAME\Application Data\Microsoft\AddIns\
  3. 打开 Excel 并导航至
    (Excel 2003)菜单栏 → 工具 → 加载项
    (Excel 2007)开始按钮 → Excel 选项 → 加载项 → 下拉菜单:Excel 加载项 → 转到
    (Excel 2010)文件选项卡 → 选项 → 加载项 → 下拉菜单:Excel 加载项 → 转到
  4. 查看我的自动备份

它能做什么

  • 为每个打开的工作簿保存一个备份文件
  • 名为自动备份与工作簿在同一个位置创建
  • 最多可保存 3 个备份
  • 保存日期附加到原始备份文件名中
  • 时间间隔为10秒
  • 用户尚未保存的新创建的工作簿不会被自动备份保存
    (它们还没有有效路径)
  • 源代码(34 行)可以查看粘贴箱.
    此外公开活动将启动自动备份

注意:这些低时间延迟和计数设置仅适用于早期测试。您可以稍后轻松更改它们

在此处输入图片描述

相关内容