如何编写一个脚本,以特定的时间间隔将Excel文件保存到另一个文件?

时间:2012-12-06 15:23:15

标签: excel vba

我有一个宏,可以创建Excel文档的备份副本 如何使宏在每次保存文档时自动运行?

以下是代码:

Sub BUandSave()  
  'Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)  
  'Saves the current file to a backup folder and the default folder  
  'Note that any backup is overwritten  
 Application.DisplayAlerts = False  
 ActiveWorkbook.SaveCopyAs Filename:="G:\1 Processing\Christine\" & _  
 ActiveWorkbook.Name  
 ActiveWorkbook.save  
 Application.DisplayAlerts = True  
End Sub

我从网上获得了这个代码并且没有VBA技能,请帮忙!

编辑:好的,谢谢你的回答和见解。现在我还有一个问题。如何进行备份以使备份副本以不同的名称保存。我想做一些类似于DO NOT DELETE或DO NOT EDIT之类的东西,以便编辑文件的人不会尝试编辑错误的文件。如何将其添加到代码中?

1 个答案:

答案 0 :(得分:2)

答案在您发布的代码中:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)  
'Saves the current file to a backup folder and the default folder  
'Note that any backup is overwritten  

 Application.DisplayAlerts = False  
 ActiveWorkbook.SaveCopyAs Filename:="G:\1 Processing\Christine\" & ActiveWorkbook.Name  
 ActiveWorkbook.Save
 Application.DisplayAlerts = True  
End Sub

将上述代码放在ThisWorkbook模块中(Alt + F11会让您进入VBA编辑器)。 Workbook_BeforeSave是一个工作手册。其中的代码在触发事件时执行,在这种情况下,在保存工作簿之前。 Excel中的事件非常酷,是代码slingers的强大工具:-) 您现在不再需要在问题中发布的代码。