VBA MsgBox消息框

弹出消息提示框。

用户点击消息框中不同的按钮时,会返回对应不同的整数,来区别点击的哪个按钮。


语法

Function MsgBox (prompt, [ buttons, ] [ title, ]) As Integer

弹出消息框,标题栏文字为title,提示信息为prompt,下方按钮为buttons。


参数

prompt:提示信息

title:标题栏文字

buttons:显示的按钮

按钮常量 说明
vbOKOnly 0 仅显示“确定”按钮。
vbOKCancel 1 显示“确定”和“取消”按钮。
vbAbortRetryIgnore 2 显示“中止”、“重试”和“忽略”按钮。
vbYesNoCancel 3 显示“是”、“否”和“取消”按钮。
vbYesNo 4 显示“是”和“否”按钮。
vbRetryCancel 5 显示“重试”和“取消”按钮。
vbCritical 16 显示“关键消息”图标。
vbQuestion 32 显示“警告查询”图标。
vbExclamation 48 显示“警告消息”图标。
vbInformation 64 显示“信息消息”图标。

返回值

返回值常量 说明
vbOK 1 确定。用户点击了确定按钮。
vbCancel 2 取消
vbAbort 3 中止
vbRetry 4 重试
vbIgnore 5 忽略
vbYes 6
vbNo 7

示例

例1:简单提示框。

Sub sub1()
  MsgBox "欢迎访问xiaobuteach.com", vbOKOnly, "小步教程"
End Sub

vbOKOnly表示只显示确定按钮。

运行效果:

img


例2:提示信息中换行。

vbNewLine表示换行符。

Sub sub2()
  MsgBox "欢迎访问" & vbNewLine & "xiaobuteach.com", vbOKOnly, "小步教程"
End Sub

运行效果

img


例3:通过变量接收MsgBox的返回值。

Sub sub3()
  Dim result
  result = MsgBox("欢迎访问xiaobuteach.com", vbOKOnly, "小步教程")
  Debug.Print "用户选择按钮:" & result
End Sub

MsgBox本身是函数,需要返回值时,则调用时需要加小括号 ( )。

输出结果:

用户选择按钮:1

对照返回值常量表:1表示选择的确定按钮。


例4:消息提示框带确定、取消两个按钮。

Sub sub4()
  Dim result As Integer
  result = MsgBox("继续访问xiaobuteach.com", vbOKCancel, "小步教程")
  Debug.Print "用户选择按钮:" & result
End Sub

vbOKCancel表示具有[确定]、[取消]两个按钮。

运行效果:

img

输出效果:

点击确定按钮时,输出

用户选择按钮:1

点击取消按钮时,输出

用户选择按钮:2

对照返回值表格,1、2分别表示用户点击了确认、取消按钮。