我指的是a previous question dealing with macros after closing Excel。
其中一个答案通过显示一个使用简单命令" MsgBox"创建的对话框提供了一个非常优雅的解决方案。
现在,我想通过显示内置在对话框中的Excel(在关闭工作簿时显示)来确定是否可以实现更优雅的解决方案。目的:展示具有相同"外观和感觉的Dialox Box"与所有其他对话框一样,语言相同......
我做了一些研究,但我只找到了另存为对话框。
Application.Dialogs(xlDialogSaveAs).Show
显示对话框后,显然需要获取已单击的按钮,以继续前面提到的问题中的宏。
答案 0 :(得分:1)
我认为你真正想要的是Application.GetSaveAsFilename
这将显示saveAs对话框,如果用户选择OK,则返回文件名;如果用户选择X或取消,则返回False。
应该注意,这只是显示对话框并获取交互的详细信息,它实际上不会保存您的文件。因此,您必须使用返回值将其实现到代码中。
Sub test()
Dim ans As Variant
Dim msg As String
ans = Application.GetSaveAsFilename
If ans = False Then
msg = "Action was cancelled"
Else
msg = "File Path is: " & ans
End If
MsgBox msg, vbInformation, "Save As Result"
End Sub