- 当文件点击保存后,在指定的磁盘位置,按保存时间,同时备份文件。一般用于追溯更改记录。
- 效果:
点击保存
在指定路径,按保存时间生成备份
实现代码
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim m, n, dotPos As String
m = Format(Now(), "yyyymdhhmmss") '因工作表命名不能出现“:”,所以日期格式需转化
dotPos = InStrRev(ThisWorkbook.Name, ".") '类似于find函数,但find函数针对的是range()对象,此处为字符串,找出字符好的位置
n = Left(ThisWorkbook.Name, dotPos - 1) '按指定位置返回字符串
ThisWorkbook.SaveCopyAs Filename:="G:\practice\VBA\date\重要文件备份\" & n & m & ".xlsx" 'SaveCopyAs备份保存,SaveAs直接把源文件另存
End Sub
注意事件选择: