VBA输出msgbox函数

大家好,前面示例中涉及过输出msgbox函数,使用最简单的形式,本节就将这个函数的内容扩充一下,学习其完整的结构,内容重在理解。

一、msgbox 基础语法

msgbox有语句和函数两种格式如下,其中[ ]中的内容可以省略。

语句格式:MsgBox(prompt[, buttons] [, title] [, helpfile, context])

函数格式:变量=MsgBox(prompt[, buttons] [, title] [, helpfile, context])

其中的参数除buttons外均与inputbox函数相同。

prompt是对话框消息出现的字符串表达式,title为对话框标题栏中字符串,buttons参数后面会具体说明。helpfile,context是与帮助文件相关基本省略。

首先说明一下语句和函数两种形式的区别,msgbox语句形式,仅显示内容,点击确定不会产生其他结果。

那么增加变量i,将上面的示例改成函数格式看下结果。

同样一个msgbox语句,点击确定按钮后,函数格式返回了一个数值1。这个变量返回值1就提供了可以和程序交互的可能。

如果可以有几个不同的按钮可以选择,然后返回不同的值就更实用了?不同值可以用来作判断条件。如下图所示:

通过更改了一个buttons的参数值35,改变了对话框的样式(下面会具体说明。)可以看到点击三个按钮后,变量i得到的返回值不同,根据不同返回值来作条件编写适用的判断结构代码,就可以实现简单的交互。

那么现在摆在我们面前的就是两个问题:一如何调整buttons参数来显示不同的对话框?二、点击不同的按钮的具体返回值汇总。以下内容重在理解,理解后就很简单。

一、buttons 参数

buttons参数是用来指定显示按钮的数量及形式,提示图标样式、默认按钮、消息框的强制相应等四方面内容的。

所以它实际可以由四组数值(或常数)组成的。当然四组数值并不是都必须的,根据需求选择即可。先分别来看四组值和对应的内容,再看如何使用。

第一组(0~5)决定对话库中按钮的类型和数量。

第二组(16,32,48,64)决定对话框中显示的图标。

第三组(0,256,512,768)绝对对话框中默认的活动按钮。活动按钮中的文字会有显示虚线。

第四组(0,4096)决定消息框的强制响应性,不太常用。

buttons参数对两种表示方法,第一种容易理解的是使用常量,可以看到常量名字就提示了显示内容。在写第二参数时,系统也会自动提示常量内容。从四组常量中选择需要的常量用+号连接,如下图示例:

常量通常从前三组中选择,只选择第一组也是没有问题,根据需求选择即可。用常量的好处时,显示内容一目了然,写常量时,VBA程序也会提示。

第二种简洁的显示方式。就是选择的常量对应值的加和。比如示例中的vbyesnocancel和vbquestion对应的值分别是3和32。那么累加的和35就是buttons参数。(程序对值的设计保证不会有重复。)

这种方式很简洁,但缺点时需要知道不同显示样式对应的值,同时改代码时也涉及计算也不便修改,所以可以根据自己喜好来选择把。

二、msgbox 函数返回值

点击msgbox函数对话框的按钮,msgbox函数会有不同的返回值,通过变量可以获得返回值,作为不同的判定条件,供我们设计人机交互,下面汇总一下。

内容不需要特别记忆,可以查看帮助,或者直接在程序中写小段代码用debug.print来显示变量返回参数即可。

本节主要介绍了msgbox函数的使用方法,重点是buttons参数两种表示方法和msgbox函数的返回值,重在理解,需要时按规则套用即可,祝大家学习快乐。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180701G05R5700?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券