详细的VBA msgbox的用法.docx
- 文档编号:23198448
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:11
- 大小:384.35KB
详细的VBA msgbox的用法.docx
《详细的VBA msgbox的用法.docx》由会员分享,可在线阅读,更多相关《详细的VBA msgbox的用法.docx(11页珍藏版)》请在冰豆网上搜索。
详细的VBAmsgbox的用法
VBA的msgbox的用法
msgbox主要用来弹出提示窗口,也可以进行简单的逻辑判断,使用起来简单方便,今天,来看一下msgbox的用法。
1、建新Excel表,Alt+F11进入vba编辑窗口。
2、在编辑窗口中如下代码:
Subtest()
Msgbox(“这是一个弹出窗口”)
Endsub
上图是一个很简单的功能,弹出信息“这是一个弹出窗口”,系统的提示说明了msgbox的语法。
下图是运行的结果
下面详细介绍msgbox基础语法
msgbox有语句和函数两种格式如下,其中[]中的内容可以省略。
语句格式:
MsgBox(prompt[,buttons][,title][,helpfile,context])
函数格式:
变量=MsgBox(prompt[,buttons][,title][,helpfile,context])
其中的参数除buttons外均与inputbox函数相同。
prompt是对话框消息出现的字符串表达式,title为对话框标题栏中字符串,buttons参数后面会具体说明。
helpfile,context是与帮助文件相关基本省略。
首先说明一下语句和函数两种形式的区别,msgbox语句形式,仅显示内容,点击确定不会产生其他结果。
Sub测试msgbox语句()
MsgBox("这是一个弹出窗口")
EndSub
上述代码运行结果
那么增加变量i,将上面的示例改成函数格式看下结果。
Sub测试msgbox函数()
DimiAsInteger
i=MsgBox("是否继续运行")
Debug.Printi
EndSub
同样一个msgbox语句,点击确定按钮后,函数格式返回了一个数值1。
这个变量返回值1就提供了可以和程序交互的可能。
如果可以有几个不同的按钮可以选择,然后返回不同的值就更实用了?
不同值可以用来作判断条件。
Sub测试msgbox函数()
DimiAsInteger
i=MsgBox("是否继续运行",35)
Debug.Printi
EndSub
运行结果如下图所示:
当你在弹出窗口中点“是”返回值是6,点“否”返回值是7,点“取消”返回值是2。
通过更改了一个buttons的参数值35,改变了对话框的样式(下面会具体说明。
)可以看到点击三个按钮后,变量i得到的返回值不同,根据不同返回值来作条件编写适用的判断结构代码,就可以实现简单的交互。
那么现在摆在我们面前的就是两个问题:
一如何调整buttons参数来显示不同的对话框?
二、点击不同的按钮的具体返回值汇总。
以下内容重在理解,理解后就很简单。
一、buttons参数
buttons参数是用来指定显示按钮的数量及形式,提示图标样式、默认按钮、消息框的强制相应等四方面内容的。
所以它实际可以由四组数值(或常数)组成的。
当然四组数值并不是都必须的,根据需求选择即可。
先分别来看四组值和对应的内容,再看如何使用。
第一组(0~5)决定对话库中按钮的类型和数量。
第二组(16,32,48,64)决定对话框中显示的图标。
第三组(0,256,512,768)绝对对话框中默认的活动按钮。
活动按钮中的文字会有显示虚线。
第四组(0,4096)决定消息框的强制响应性,不太常用。
buttons参数有两种表示方法:
第一种容易理解的是使用常量,可以看到常量名字就提示了显示内容。
在写第二参数时,系统也会自动提示常量内容。
从四组常量中选择需要的常量用+号连接,如下图示例:
代码:
Sub测试msgbox函数()
DimiAsInteger
i=MsgBox("请选择",vbYesNo+vbQuestion)
Debug.Printi
EndSub
运行结果如下图
常量通常从前三组中选择,只选择第一组也是没有问题,根据需求选择即可。
用常量的好处时,显示内容一目了然,写常量时,VBA程序也会提示。
第二种简洁的显示方式:
就是选择的常量对应值的加和。
比如示例中的vbyesnocancel和vbquestion对应的值分别是3和32。
那么累加的和35就是buttons参数。
(程序对值的设计保证不会有重复。
)
示例代码:
Sub测试msgbox函数()
DimiAsInteger
i=MsgBox("是否继续运行",35)
Debug.Printi
EndSub
运行结果如下图所示:
这种方式很简洁,但缺点时需要知道不同显示样式对应的值,同时改代码时也涉及计算也不便修改,所以可以根据自己喜好来选择把。
msgbox函数返回值
点击msgbox函数对话框的按钮,msgbox函数会有不同的返回值,通过变量可以获得返回值,作为不同的判定条件,供我们设计人机交互,下面汇总一下。
内容不需要特别记忆,可以查看帮助,或者直接在程序中写小段代码用debug.print来显示变量返回参数即可。
最后,给一个完整的例子:
要求弹出一个信息窗口,信息内容是“删除信息无法恢复,是否删除?
”,窗口标题是“警告”,图标是警告图标。
如果用户选择了“是”,则返回“删除了!
”,否则返回“你取消了,不会删除!
”。
示例代码:
Sub测试msgbox函数()
DimresponseAsInteger
response=MsgBox("删除信息无法恢复,是否删除?
",vbExclamation+vbYesNo,"村夫警告")
Ifresponse=vbYesThen
MsgBox"删除了"
Else
MsgBox"你取消了,不会删除!
"
EndIf
EndSub
运行结果:
选择点击“是”按钮的结果。
选择点击“否”按钮的结果。
本文主要介绍了msgbox函数的使用方法,重点是buttons参数两种表示方法和msgbox函数的返回值,重在理解,需要时按规则套用即可,祝你学习快乐。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 详细的VBA msgbox的用法 详细 VBA msgbox 用法