如何用VBA实现将Excel 关闭后直接另存到一个指定的路径,并在另存文件名后自动获取系统时间

2024-10-31 12:17:15
推荐回答(3个)
回答(1):

不知道是不是这个意思:在Excel的ThisWorkbook模块中,粘贴下列代码。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    ThisWorkbook.Save'保存本文件
    Application.DisplayAlerts = False
    ThisWorkbook.SaveAs "D:\ff\测试" & Format(Now, "yyyy年m月d日 h时m分s秒") & ".xls"'另存为其它文件,这里弄成你自己的路径和文件名
    Application.DisplayAlerts = True
End Sub

回答(2):

本例假设文件另存为:C:\aaa.xls,你可以自行修改
请在ThisWorkBook对象中输入如下代码:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs Filename:="C:\aaa.xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub

回答(3):

excel自动另存需要编写宏函数。

  1. 可以在ThisWorkBook对象中输入代码完成,

  2. 代码如下:

    Private Sub Workbook_BeforeClose(Cancel As Boolean) ActiveWorkbook.SaveAs Filename:="C:\aaa.xls", _ FileFormat:=xlNormal, Password:="", WriteResPassword:="", _ ReadOnlyRecommended:=False, CreateBackup:=False End Sub

  3. 其中C:\aaa.xls就是所备份的文件的路径。