宏“要另存为”并且不要打开已保存的文档

时间:2018-05-04 12:33:09

标签: excel vba excel-vba

我有以下宏“另存为”excel doc的副本。

Sub STEP3SaveAs()
    Application.GetSaveAsFilename
End Sub

但是,每当我“拯救生命”时,我都会登陆我刚刚保存的文件......

我需要协助使用“另存为”的宏,并留下我正在处理的文档。

任何帮助都将受到高度赞赏。

2 个答案:

答案 0 :(得分:1)

这里的问题是GetSaveAsFilename根本没有保存。这只是显示一个用于选择文件名的对话框,但不保存它。

您可以使用Workbook.SaveCopyAs Method保存实际工作簿的副本。

Public Sub SaveCopy()
    Dim Filename As String
    Filename = Application.GetSaveAsFilename 'choose filename

    ThisWorkbook.SaveCopyAs(Filename)
End Sub

答案 1 :(得分:0)

您可以执行.SaveAs两次,因此会返回原始工作簿。 ThisWorkbook.FullName是获取路径的一种方式:

Sub TestMe()

    Dim saveName As String
    Dim oldName  As String

    With ThisWorkbook
        oldName = .FullName
        saveName = Application.GetSaveAsFilename            
        .SaveAs saveName
        .SaveAs oldName
    End With

End Sub