2016-06-21 48 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

相關問題