VBA消息框(MsgBox)
MsgBox
函数显示一个消息框,并等待用户点击一个按钮,然后根据用户点击的按钮执行相关的操作。
语法
MsgBox(prompt[,buttons][,title][,helpfile,context])
参数说明
prompt - 必需的参数。在对话框中显示为消息的字符串。提示的最大长度大约为
1024
个字符。 如果消息扩展为多行,则可以使用每行之间的回车符(Chr(13)
)或换行符(Chr(10)
)来分隔行。buttons - 可选参数。一个数字表达式,指定要显示的按钮的类型,要使用的图标样式,默认按钮的标识以及消息框的形式。如果留空,则按钮的默认值为
0
。title - 可选参数。 显示在对话框的标题栏中的字符串表达式。 如果标题留空,应用程序名称将被放置在标题栏中。
helpfile - 可选参数。一个字符串表达式,标识用于为对话框提供上下文相关帮助的帮助文件。
Context - 可选参数。一个数字表达式,用于标识由帮助作者分配给相应帮助主题的帮助上下文编号。 如果提供上下文,则还必须提供
helpfile
。
Buttons 参数可以使用以下任何值 -
0 vbOKOnly - 仅显示“确定” 按钮。
1 vbOKCancel - 显示“确定” 和“取消” 按钮。
2 vbAbortRetryIgnore - 显示“中止”,“重试”和“忽略” 按钮。
3 vbYesNoCancel - 显示“是”,“否”和“取消” 按钮。
4 vbYesNo - 显示“是”和“否”按钮。
5 vbRetryCancel - 显示“重试”和“取消”按钮。
16 vbCritical - 显示严重消息图标。
32 vbQuestion - 显示警告查询图标。
48 vbExclamation - 显示警告消息图标。
64 vbInformation - 显示信息消息图标。
0 vbDefaultButton1 - 第一个按钮是默认的。
256 vbDefaultButton2 - 第二个按钮是默认的。
512 vbDefaultButton3 - 第三个按钮是默认的。
768 vbDefaultButton4 - 第四个按钮是默认的。
0 vbApplicationModal 应用程序模式 - 当前的应用程序将不会工作,直到用户响应消息框。
4096 vbSystemModal 系统模式 - 所有的应用程序将不会工作,直到用户响应消息框。
上述值在逻辑上分为四组:第一组(0
至5
)指示要在消息框中显示的按钮。第二组(16
,32
,48
,64
)描述要显示的图标的样式,第三组(0
,256
,512
,768
)指示哪个按钮必须是默认的,第四组(0
,4096
)确定消息框的形式。
返回值
MsgBox
函数可以返回以下值之一,可用于标识用户在消息框中单击的按钮。
vbOK - 确定 按钮被点击。
vbCancel - 取消 按钮被点击。
vbAbort - 中止 按钮被点击。
vbIgnore - 忽略 按钮被点击。
vbYes - 是 按钮被点击。
vbNo - 否 按钮被点击。
示例
Function MessageBoxDemo() 'Message Box with just prompt message ' MsgBox('欢迎您~') 'Message Box with title, yes no and cancel Butttons ' result = MsgBox('你喜欢蓝色吗?', 3, '选择一个选项') ' Assume that you press No Button ' MsgBox ('返回 result 的值是:' &result) End FunctionVb
输出结果
第1步 - 上述功能函数可以通过单击VBA窗口上的“运行”按钮或通过从Excel工作表调用函数来执行,如以下屏幕截图所示 -
运行子程序 -
第2步 - 显示一个简单的消息框,并显示消息“欢迎”和“确定”按钮
第3步 - 点击确定后,另一个对话框会显示一个消息,同时显示“是,否和取消”按钮。
第4步 - 点击“否”按钮后,该按钮(7
)的值将被存储为一个整数,并显示为一个消息框给用户,如以下屏幕截图所示。使用这个值,可以理解用户点击了哪个按钮。