我想创建一个 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 编写了一个快速自动备份插件。
您能测试一下并报告错误吗?如有必要,我会改进它。
安装
- 下载加入
- 保存于
C:\Documents and Settings\USERNAME\Application Data\Microsoft\AddIns\
- 打开 Excel 并导航至
(Excel 2003)菜单栏 → 工具 → 加载项
(Excel 2007)开始按钮 → Excel 选项 → 加载项 → 下拉菜单:Excel 加载项 → 转到
(Excel 2010)文件选项卡 → 选项 → 加载项 → 下拉菜单:Excel 加载项 → 转到 - 查看我的自动备份
它能做什么
- 为每个打开的工作簿保存一个备份文件
- 名为自动备份与工作簿在同一个位置创建
- 最多可保存 3 个备份
- 保存日期附加到原始备份文件名中
- 时间间隔为10秒
- 用户尚未保存的新创建的工作簿不会被自动备份保存
(它们还没有有效路径) - 源代码(34 行)可以查看粘贴箱.
此外公开活动将启动自动备份
注意:这些低时间延迟和计数设置仅适用于早期测试。您可以稍后轻松更改它们