VBA Excel-在用户取消GetSaveAsFilename弹出框时退出sub
我写了一个分配给按钮的代码。当按下按钮时,它将创建一个新工作簿,并询问用户在何处保存新文件 我希望确保如果用户单击“取消”,则会关闭新工作簿并退出子工作簿 我已经写了如下,但我不知道如何写一个更好的代码。我知道VBA Excel-在用户取消GetSaveAsFilename弹出框时退出sub,vba,excel,Vba,Excel,我写了一个分配给按钮的代码。当按下按钮时,它将创建一个新工作簿,并询问用户在何处保存新文件 我希望确保如果用户单击“取消”,则会关闭新工作簿并退出子工作簿 我已经写了如下,但我不知道如何写一个更好的代码。我知道if可以改进 Option Explicit Sub Create_a_new_workbook_and_save_it() Dim xlPath As String Workbooks.Add Application.DisplayAlerts = False xlPath =
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
语句没有什么特别的错误,但是如果您不执行工作簿。添加直到If
之后,您可以避免执行活动工作簿。关闭If
内的If
@YowE3K您完全正确。谢谢:)我想如果我能用另一种形式重写if语句。我认为有更好的方法来编写它,而不是使用“xlPath”。