vba中MsgBox的参数及用法
1、作用
在消息框中显示信息,并等待用户单击按钮,可返回单击的按钮值(比如“确定”或者“取消”)。通常用作显示变量值的一种方式。
2、语法
MsgBox(Prompt[,Buttons][,Title][,Helpfile,Context])
参数说明:
(1)Prompt,必需的参数,为字符串,作为显示在消息框中的消息文本。其最大长度约为1024个字符,由所用字符的宽度决定。如果prompt的内容超过一行,则可以在每一行之间用回车符(Chr(13))、换行符(Chr(10))或是回车与换行符的组合(Chr(13)&Chr(10))将各行分隔开来。
(2)Buttons,可选的参数,为数值表达式的值之和,指定显示的按钮的数目及形式、使用的图标样式、缺省按钮及消息框的强制回应等,可以此定制消息框。若省略该参数,则其缺省值为0。设置值见下表。
(3)Title,可选的参数,表示在消息框的标题栏中所显示的文本。若省略该参数,则将应用程序名放在标题栏中。
(4)Helpfile,可选的参数,为字符串表达式,提供帮助文件。若有Helpfile,则必须有Context。
(5)Context,可选的参数,为数值表达式,提供帮助主题。若有Context,则必须有Helpfile。
3、Button参数
用于MsgBox函数中Button参数的常量
| 符号常量 | 值 | 作用 | |
| 按钮类型 | vbokonly | 0 | 只显示“确定”按钮 |
| vbokcancel | 1 | 显示“确定”及“取消”按钮 | |
| vbabortretryignore | 2 | 显示“终止”、“重试”及“忽略”按钮 | |
| vbyesnocancel | 3 | 显示“是”、“否”及“取消”按钮 | |
| vbyesno | 4 | 显示“是”、“否”按钮 | |
| vbretrycancel | 5 | 显示“重试”及“取消”按钮 | |
| 图标样式 | vbcritical | 16 | 显示critical message图标(系统叉号图标) |
| vbquestion | 32 | 显示warning query图标(系统问号图标) | |
| vbexclamation | 48 | 显示warning message图标(系统感叹号图标) | |
| vbinformation | 64 | 显示information message图标(系统信息图标) | |
| 默认按钮 | vbdefauitbutton1 | 0 | 第一个按钮是默认值 |
| vbdefauitbutton2 | 256 | 第二个按钮是默认值 | |
| vbdefauitbutton3 | 512 | 第三个按钮是默认值 | |
| vbdefauitbutton4 | 768 | 第四个按钮是默认值 | |
| 强制返回 | vbapplicationmode1 | 0 | 应用程序强制返回 |
| vbsystemmode1 | 4096 | 系统强制返回 | |
| 其他类型 | vbmsgboxhelpbutton | 16384 | 在对话框中添加一个“帮助”按钮 |
| vbmsgboxsetforeground | 65535 | 指定对话框窗口作为前景窗口 | |
| vbmsgboxright | 524288 | 对话框的文本为右对齐 | |
| vbmsgboxrtireading | 1048576 | 指定对话框中的元素从右到左显示 | |
说明:
(1)第一组值(0–5)描述了消息框中显示的按钮的类型与数目;第二组值(16,32,48,64)描述了图标的样式;第三组值(0,256,512,768)说明哪一个按钮是缺省值;而第四组值(0,4096)则决定消息框的强制返回性。将这些数字相加以生成Buttons参数值的时候,只能由每组值取用一个数字。
(2)这些常数都是VBA指定的,可以在程序代码中使用这些常数名称代替实际数值。
4、返回值
用于MsgBox函数返回值的常量
|
常数 |
值 |
说明 |
|
vbOK |
1 |
确定 |
|
vbCancel |
2 |
取消 |
|
vbAbort |
3 |
终止 |
|
vbRetry |
4 |
重试 |
|
vbIgnore |
5 |
忽略 |
|
vbYes |
6 |
是 |
|
vbNo |
7 |
否 |
5、相关说明
(1) 如果同时提供了Helpfile与Context参数,可以按F1键来查看与Context相应的帮助主题,Excel通常会在输入框中自动添加一个帮助(Help)按钮。
(2)若在消息框中显示“取消”按钮,则按下ESC键与单击“取消”按钮效果相同。若消息框中有“帮助”按钮,则提供相关的帮助信息。
(3)如果要输入多个参数并省略中间的某些参数,则必须在相应位置加入逗号分界符。
6、示例
(1)使用 MsgBox 函数,在具有“是”及“否”按钮的对话框中显示一条严重错误信息。示例中的缺省按钮为“否”,MsgBox函数的返回值视用户按哪一个钮而定。并假设DEMO.HLP为一帮助文件,其中有一个帮助主题代码为1000。
- Dim Msg,Style,Title,Help,Ctxt,Response,MyString
- '定义消息文本
- Msg="Do you want to continue ?"
- ' 定义按钮
- Style = vbYesNo + vbCritical + vbDefaultButton2
- ' 定义标题文本
- Title = "MsgBox Demonstration"
- ' 定义帮助文件
- Help = "DEMO.HLP"
- ' 定义帮助主题
- Ctxt = 1000
- Response = MsgBox(Msg, Style, Title, Help, Ctxt)
- If Response = vbYes Then ' 用户按下“是”
- MyString = "Yes"
- Else ' 用户按下“否”
- MyString = "No"
- End If
(2)只显示某消息
- MsgBox “Hello!”
(3)将消息框返回的结果赋值给变量
- Ans=MsgBox(“Continue?”,vbYesNo)
- If MsgBox(“Continue?”,vbYesNo)<>vbYes Then Exit Sub
(4)使用常量的组合,赋值组Config变量,并设置第二个按钮为缺省按钮
- Config=vbYesNo+vbQuestion+vbDefaultButton2
(5)若要在消息中强制换行,可在文本中使用vbCrLf(或vbNewLine)常量,用&加空格与字符隔开。如
- MsgBox “This is the first line.” & vbNewLine & “Second line.”
(6)可以在消息框中使用vbTab常量插入一个制表符。下面的过程使用一个消息框来显示5×5单元格区域中的所有值,用vbTab常量分隔列并使用vbCrLf常量插入一个新行。注意在MsgBox函数最多只显示1024个字符,因此限制了可显示的单元格数。
- Option Explicit
- Sub ShowRangeValue()
- Dim Msg As String
- Dim r As Integer, c As Integer
- Msg = ""
- For r = 1 To 5
- For c = 1 To 5
- Msg = Msg & Cells(r, c) & vbTab
- Next c
- Msg = Msg & vbCrLf
- Next r
- MsgBox Msg
- End Sub
(7)在消息框语句中运用工作表函数以及设置显示的数置格式,如下面语句所示:
- MsgBox " selection has " & m & " cells ." & Chr(13) & " the sum is :" & Application.WorksheetFunction.Sum(Selection) & Chr(13) & "the average is :" & Format(Application.WorksheetFunction.Average(Selection), "#,##0.00"), vbInformation, "selection count & sum & average" & Chr(13)
出处:http://blog.csdn.net/bright_chen7/article/details/6248715
参考:https://www.baidu.com/link?url=lRwVSdVDBPcm5ww-CkxqlyM4ColOU1VodWiHGsA-LgQnmYahXESn7nydeZmAo9rz&wd=&eqid=c33f9e7100001a8b00000004584f93a7
vba中MsgBox的参数及用法的更多相关文章
- VBA中msgbox的用法小结
1.作用在消息框中显示信息,并等待用户单击按钮,可返回单击的按钮值(比如“确定”或者“取消”).通常用作显示变量值的一种方式.2.语法MsgBox(Prompt[,Buttons][,Title][, ...
- VBA中Option的四种用法
1.Option Explicit.当使用Option Explicit时,必须在模块中的所有过程声明每一个变量,否则会出现语法错误并不能被编译.这样做的好处是,它能消除程序中因为错拼变量名而导致程序 ...
- Oracle plsql存储过程中out模式参数的用法
在plsql中,存储过程中的out模式的参数可以用来返回数据,相当于函数的返回值.下面是一个小例子. 沿用上一篇的emp表结构和数据. 存储过程如下: create or replace proced ...
- VB类模块中属性的参数——VBA中Range对象的Value属性和Value2属性的一点区别
在VB中,属性是可以有参数的,而VBA中属性使用参数非常常见.比如最常用的:Worksheet.Range("A1:A10") VB的语法,使用参数的不一定是方法,也有可能是属性 ...
- [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法
一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...
- linux 中解析命令行参数(getopt_long用法)
linux 中解析命令行参数(getopt_long用法) http://www.educity.cn/linux/518242.html 详细解析命令行的getopt_long()函数 http:/ ...
- models中,字段参数limit_choices_to的用法
这里,在使用 ModelForm 渲染前端页面的前提下,对于 models 中的 ManyToManyField 类型字段会在 ModelForm 中被转化为 ModelMultipleChoiceF ...
- 在VBA中使用Windows API
VBA是一种强大的编程语言,可用于自定义Microsoft Office解决方案.通过使用VBA处理一个或多个Office应用程序对象模型,可以容易地修改Office应用程序的功能或者能够使两个或多个 ...
- VBA中find的一些使用方法
用excel处理数据的时候,无论是使用VBA还是函数,查找和引用都是两大主要的工作,VBA中的find系列的方法(find.findnext.Range.FindPrevious)返回range对象, ...
随机推荐
- hdu 5720 Wool
hdu 5720 问题描述 黎明时,Venus为Psyche定下了第二个任务.她要渡过河,收集对岸绵羊身上的金羊毛. 那些绵羊狂野不驯,所以Psyche一直往地上丢树枝来把它们吓走.地上现在有n n ...
- AsyncTask源码分析
在Android中,主线程是UI线程,当需要根据其他数据进行更新UI时,如果获取数据的操作比较耗时的话,会触发ANR,所以我们应该讲耗时的操作进行异步操作,尤其是请求网络数据的操作应该放在后台线程进行 ...
- 包含min函数的栈
题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数 解法一: 思路:采用java中自带的迭代函数进行处理. public class Solution{ /** * @pa ...
- 华为手机打开Logcat的方法
华为手机默认是关闭logcat信息的,这在开发调试时当然很不方便,打开log信息的方法如下 1. 进入拨号界面输入:*#*#2846579#*#* 2. 依次选择ProjectMenu---后台设置 ...
- WebForm和WinForm取当前根目录的通用的方法[转载]
转自:WebForm和WinForm取当前根目录的通用的方法 某些环境下用 System.Web.HttpContext.Current.Server.MapPath 取不到目录. 可以用下面两个方法 ...
- Til the Cows Come Home
Description Bessie is out in the field and wants to get back to the barn to get as much sleep as pos ...
- 关于CSS3的代码总结(部分)
1. 构造样式表:selector{ Property:value; Property:value; } Selector是需要更改样式的元素,property为css属性的名称,value应用的哪种 ...
- 10个超级有用、必须收藏的PHP代码样例
在PHP的流行普及中,网上总结出了很多实用的PHP代码片段,这些代码片段在当你遇到类似的问题时,粘贴过去就可以使用,非常的高效,非常的省时省力.将这些程序员前辈总结出的优秀代码放到自己的知识库中,是一 ...
- mysq双主模式
准备环境:服务器操作系统为RHEL6.4 x86_64,为最小化安装.主机A和主机B均关闭防火墙和SELINUX ,IP地址分别为192.168.131.129和192.168.131.130,MyS ...
- Spring MVC 3 深入总结
一.前言: 大家好,Spring3 MVC是非常优秀的MVC框架,由其是在3.0版本发布后,现在有越来越多的团队选择了Spring3 MVC了.Spring3 MVC结构简单,应了那句话简单就是美 ...