Excel VBA MsgBox函数

下面,继续做一些有趣的事情。让VBA能够给我们弹出对话框,让用户作出响应,实现与用户交互。这里要使用VBA的内置函数:MsgBox函数和InputBox函数。

与Excel工作表函数一样,VBA也包含有各种内置函数,以简化计算和操作,而MsgBox函数和InputBox函数就是其中常用的函数。这里,先介绍MsgBox函数。

显示信息

MsgBox函数可以为我们提供输出信息,将VBA代码的运行结果告诉我们。看下面简单的示例,代码运行后会弹出一个对话框,如图右侧所示。

此时,Excel告诉我们相关信息,并会等待我们作出响应,单击“确定”,对话框消失。当然,这只是MsgBox函数最基本的用法。我们可以让它显示更丰富的信息,例如,显示更有意义的标题、更多的选择按钮、图标,甚至获取用户响应后的值。

将上面的程序代码修改如下:

Sub MsgBoxTest()

Dim i As Long

i = 5

MsgBox Prompt:=”变量i的值是”& i, Buttons:=vbOKCancel + vbCritical, Title:=”显示变量的值”

End Sub

运行后的结果如下图:

图中附加说明了MsgBox函数中各参数在对话框中对应的显示。

MsgBox函数的语法

MsgBox函数的语法如下:

MsgBox ( prompt [ , buttons ] [ , title ] [, helpfile , context ] )

其中,方括号内的参数为可选参数。参数说明如下图所示:

还有两个参数helpfile和context,我们暂且不要管它。

下表列出了参数buttons的值及说明:

常量说明

vbOKOnly0只显示“确定”按钮

vbOKCancel1显示“确定”和“取消”按钮

vbAbortRetryIgnore2显示“终止”、“重试”和“忽略”按钮

vbYesNoCancel3显示“是”、“否”和“取消”按钮

vbYesNo4显示“是”和“否按钮

vbRetryCancel5显示”重试“和”取消“按钮

vbCritical16显示”关键信息“图标

vbQuestion32显示”警告询问“图标

vbExclamation48显示”警告消息“图标

vbInformation64显示”通知消息“图标

vbDefaultButton10第一个按钮为默认按钮

vbDefaultButton2256第二个按钮为默认按钮

vbDefaultButton3512第三个按钮为默认按钮

vbDefaultButton4768第四个按钮为默认按钮

vbSystemModel4096所有应用程序都暂停,直至用户对消息框作出反应

vbMsgBoxHelpButton16384显示帮助按钮

获取响应的值

在用户单击了MsgBox函数对话框中的按钮后,我们可以获取用户的行为,即用户单击了哪个按钮。这样,我们可以根据用户的选择作出相应的处理。

我们可以将MsgBox函数的结果赋给某个变量,此时需要将参数放在括号中,例如:

Sub MsgBoxTest1()

Dim Msg As Integer

Msg = MsgBox(“您要继续运行吗?”,vbYesNo)

MsgBox Msg

End Sub

代码运行结果如下图所示:

接下来,我们就可以编写代码对用户单击的选择进行相应的回应。这种情形经常使用在条件判断语句中,在述相关内容时,我们再给出使用示例。

赞(59)
office办公分享 » Excel VBA MsgBox函数

本文链接:Excel VBA MsgBox函数https://www.officeapi.cn/87437.html

OFFICE,天天学一点,进步多一点

联系我们