在Excel里,如何实现自动生成备份文件到另一个文件夹

在Excel里,如何实现自动生成备份文件到另一个文件夹,有方法吗,在不需要第三方软件的支持下。

第1个回答  2019-07-05
我们可以用VBA编写简单的宏代码来实现备份功能,同时还能做到:
  1.在保存Excel文件时自动生成备份;
  2.保存Excel文件时提示是否备份;
  3.原始文件和备份文件互为备份。即编辑原始文件时,将在备份文件夹生成备份文件;编辑备份文件时,将以原始文件为备份。
一、设置宏安全性
  选择“工具→宏→安全性”菜单,将安全级别设为“低”。这样,VBA代码才可以执行。
二、输入VBA代码
  1.打开需要备份的Excel文件,右击任一工作表标签,选择“查看代码”,或选择“工具→宏→Visual
Basic编辑器”菜单,打开Visual
Basic编辑器。
  2.在“工程”窗口中双击“ThisWork
book”,此时VBA编辑器标题变为:Microsoft
Viusal
Basic-“文件名”-[ThisWorkbook(代码)]。
  3.将以下代码输入到“代码”窗口中:
  Private
Sub
Workbook_BeforeSave(ByVal
SaveAsUI
As
Boolean,
Cancel
As
Boolean)
  '指定Excel文件的路径
  XlsFilePath
=
"D:"
  '指定备份路径
  BackupXlsFilePath
=
"E:"
  If
ThisWorkbook.Path
=
XlsFilePath
Then
  ExcelFilePath
=
BackupXlsFilePath
  Else
  ExcelFilePath
=
XlsFilePath
  End
If
  '提示是否备份
  Response
=
MsgBox("保存时是否备份当前Excel文件?"
&
vbCr
&
"备份位置:"
&
ExcelFilePath,
vbYesNo,
"提示备份")
  If
Response
=
vbYes
Then
'
用户按下“是”
  '两个Excel文件相互备份
  ThisWorkbook.SaveCopyAs
Filename:=ExcelFilePath
&
"\"
&
ThisWorkbook.Name
  End
If
  End
Sub
  说明:XlsFilePath
=
"D:"和Backup
XlsFilePath
=
"E:"分别指定了正在编辑的Excel文件和备份文件的路径,可以将其中的“D:”和“E:”(不含引号)分别更换成实际的路径。在输入文件路径时一定要注意以下几点:
  1.确保路径正确无误,如果输入错误或指定的文件夹不存在,将出现错误;
  2.盘符要大写;
  3.路径的后面不要加上“\”,如“F:\备份\2006”不能写成“F:\备份\2006\”。
三、执行
  当前Excel文件编辑完成后,只要单击“保存”按钮,Excel都会提示是否备份。选择“是”将在指定的文件夹生成一个同名的备份文件,并保存当前文件。选择“否”则只保存当前文件而不做备份
相似回答