2016-06-21 56 views
1

我正试图保留打开的原始工作簿并关闭所有其他已保存(使用不同名称保存)的文件而无需重新打开。我通过点击按钮来完成SaveAs。对此有何建议?如何在SaveAs期间保留原始工作簿

sub save() 
    Application.DisplayAlerts= False 
    FileName1 = Range("D4") 
    ActiveWorkbook.SaveCopyAs FileName:="C:\Users\felonj\Desktop\list\" & FileName1 & "-" & "Audit checklist" & ".xlsm" 
    MsgBox "File Saved successfully!", , "Save" 

    Application.DisplayAlerts = True 

End sub 

回答

0

如果非要用你的代码,尝试这样的事情:

Option Explicit 

Sub save() 

    Dim obj_wb As Object 

    Set obj_wb = ThisWorkbook 

    Application.DisplayAlerts = False 
    ActiveWorkbook.SaveCopyAs Filename:=ActiveWorkbook.Path & "Audit checklist" & ".xlsm" 
    MsgBox "File Saved successfully!", , "Save" 
    Debug.Print obj_wb.Name 
    Application.DisplayAlerts = True 

    Set obj_wb = Nothing 

End Sub 

obj_wb是旧文件,通过这个变量进行访问。可能用“ThisWorkbook”替代“ActiveWorkbook”是一个好主意。或者将其始终作为一个变量来引用,而不是使用任何这些变量。

+1

它的工作!非常感谢 – Swathi

+0

很高兴我能提供帮助。您可以点击旁边的绿色检查标记我的答案为已接受。 – Vityata

相关问题