0
我写了一个代码,它分配给一个按钮。当按下按钮时,它会创建一个新的工作簿并询问用户在哪里保存新文件。VBA Excel - 当用户取消GetSaveAsFilename弹出框时退出sub
我想确保如果用户单击取消,然后关闭新的工作簿并退出子。
我写下如下,但我不知道如何编写更好的代码。我知道if
可以改进。
Option Explicit
Sub Create_a_new_workbook_and_save_it()
Dim xlPath As String
Workbooks.Add
Application.DisplayAlerts = False
xlPath = Application.GetSaveAsFilename(Title:="Select where you want to save your file") & "xlsm"
If xlPath = "Falsexlsm" Then
ActiveWorkbook.Close
Exit Sub
End If
ActiveWorkbook.SaveAs _
Filename:=xlPath, FileFormat:=52
Application.DisplayAlerts = True
End Sub
没有什么特别的毛病'If'声明,因为它是,但如果你不这样做的'Workbooks.Add'直到**在'If'之后**,您可以避免在'If'内执行'ActiveWorkbook.Close'。 – YowE3K
@ YowE3K你是对的。谢谢:) – Marshall