领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

保存后自动备份工作簿 《Excel VBA 从入门到放弃系列》

nixiaole 2025-07-09 16:40:37 知识剖析 2 ℃

Excel VBA 从入门到放弃系列:保存后自动备份工作簿

问题:

很多时候我们的Excel工作簿需要保存每次修改的版本。而如果采用手动方法备份,操作是比较繁琐的,没有自动化,效率较低,且对于懒人来讲,实在难以接受。那么问题来了,有没有自动保存的方法呢?

分析:

幸好Office / Excel有内置的VBA方便地编写一些小程序,来实现这样的操作。

解决方法:

简易步骤:

1. 将工作簿另存为xlsm格式(或者xls格式也可以)

2. 复制下面这段代码

Private Sub Workbook_AfterSave(ByVal Success As Boolean)

With ThisWorkbook

sFileName = .Name

sFileShortName = Left(sFileName, InStrRev(sFileName, ".") - 1)

sFileExtName = Right(sFileName, Len(sFileName) - InStrRev(sFileName, "."))

.SaveCopyAs .Path & "\" & sFileShortName & Format(Now, "-yyyy-mm-dd-hhmmss.") & sFileExtName

End With

End Sub

3. 切换到你的Excel工作簿

4. 按下快捷键 Alt F11进入Visual Basic

5. 双击你的工作簿对应的VBAProject

6. 双击ThisWorkbook

7. 在右侧代码窗口粘贴

8. 保存工作簿

9. 查看工作簿所在文件夹,出现了带时间戳的备份文件了。

以后每次保存这个工作簿,就可以得到一个带日期时间的备份文件了。

对其它工作簿,只要重复上述步骤,也可以同样地自动备份。

Tags:

最近发表
标签列表