msgbox vba中的命令按钮可能吗?

时间:2017-08-21 18:19:18

标签: vba button command messagebox msgbox

是否可以在vba中的msgbox窗口中添加命令按钮?

例如,我想添加一个取消按钮来停止代码而不是继续它。我可以创建一个新的用户表单,但如果我节省一些空间并使用已经存在的msgbox,那就太好了。

2 个答案:

答案 0 :(得分:3)

VBA有几种不同类型的MessageBoxes,内置命令按钮用于此目的。消息框中包含的按钮类型被声明为第二个参数 - MsgBox(提示按钮为

您可能感兴趣的类型是:

  • vbYesNo
  • vbYesNoCancel
  • vbAbortRetryIgnore
  • vbOkCancel
  • vbRetryCancel

这些按钮返回需要存储或用于比较的整数值。

VBA将这些整数答案存储为常量(例如vbOK = 1,VbCancel = 2等)。有关详细信息,请参阅Microsoft Developer Network MsgBox Function

Sub mySub()

Dim answer as Integer

answer = MsgBox("Would you like to choose yes?", vbYesNoCancel)

If answer = vbYes Then
   'Do whatever you want
ElseIf answer = vbNo Then
   'Do whatever
Else
   Exit Sub
End If

End Sub

答案 1 :(得分:0)

试试这个:

If MsgBox("Cancel or Continue, are you sure?", vbOKCancel) = vbOK Then
     'continue whatever you want to do.
End if