VBA中msgbox的用法小结

简介: 1、作用在消息框中显示信息,并等待用户单击按钮,可返回单击的按钮值(比如“确定”或者“取消”)。通常用作显示变量值的一种方式。2、语法MsgBox(Prompt[,Buttons][,Title][,Helpfile,Context])参数说明:(1)Prompt,必需的参数,为字符串,作为显示在消息框中的消息文本。
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 显示“关键信息”图标
VbQuestion           32 显示“警告询问”图标
VbExclamation        48 显示“警告消息”图标
VbInformation        64 显示“通知消息”图标
vbDefaultButton1      0 第一个按钮是缺省值(缺省设置)
vbDefaultButton2     256第二个按钮是缺省值
vbDefaultButton3     512第三个按钮是缺省值
vbDefaultButton4     768第四个按钮是缺省值
vbApplicationModal     0应用程序强制返回;应用程序一直被挂起,直到用户对消息框
作出响应才继续工作
vbSystemModal        4096系统强制返回;全部应用程序都被挂起,直到用户对消息框作
出响应才继续工作
vbMsgBoxHelpButton    16384将Help按钮添加到消息框
VbMsgBoxSetForeground 65536指定消息框窗口作为前景窗口
vbMsgBoxRight         524288文本为右对齐
vbMsgBoxRtlReading   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)
目录
相关文章
|
大数据 Python
使用Python查找字符串中包含的多个元素
本文介绍了Python中查找字符串子串的方法,从基础的`in`关键字到使用循环和条件判断处理多个子串,再到利用正则表达式`re模块`进行复杂模式匹配。文中通过实例展示了如何提取用户信息字符串中的用户名、邮箱和电话号码,并提出了优化策略,如预编译正则表达式和使用生成器处理大数据。
294 1
|
存储 异构计算 Windows
ps2023汉化版百度网盘下载photoshop2023自带神经滤镜安装包
最近,ps迎来了2023的版本,这次的版本提升针对windows11做了特别优化,启动速度比win10快了很多。期盼已久的Win版 PS 2023 终于来了,小编也是通过特殊渠道搞来的,本期带来的WIN版本支持一键安装激活,一次安装永久免费使用 众所周知,版本越高,需要的电脑配置也就越来越高。下面放一下2023版本的配置供大家参考。需要注意的是这些版本不再支持windows7系统,仅支持win10及以上的操作系统。
10531 3
|
4月前
|
传感器 移动开发 API
【HarmonyOS 5】鸿蒙中的UIAbility详解(一)
HarmonyOS 5 中的 UIAbility 是应用框架的核心组件,负责管理用户界面生命周期和上下文信息。它类似于 Android 的 Activity 或 iOS 的 UIViewController,主要用于与用户交互。本文详细解析了 UIAbility 的基本概念、启动页面设置、上下文获取、生命周期管理及常用操作(如终止实例、跨 Ability 信息传递)。
495 9
|
Go 调度 机器学习/深度学习
|
12月前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
1211 5
|
3月前
|
人工智能 搜索推荐 小程序
AI题库考试系统
本平台融合AI智能技术,打造高效课程试题库,支持PC、手机在线刷题,提供智能出题、自动解析、错题回顾、背题模式等功能,覆盖章节练习、笔记收藏、多端同步,助力学员精准提分,全面提升学习效率。
|
Python
python第三方库-字符串编码工具 chardet 的使用(python3经典编程案例)
这篇文章介绍了如何使用Python的第三方库chardet来检测字符串的编码类型,包括ASCII、GBK、UTF-8和日文编码的检测示例。
618 6
|
8月前
|
机器学习/深度学习 人工智能 算法
《当K12遇上朴素贝叶斯:趣味编程开启AI教育新旅程》
在数字化时代,K12教育迎来新机遇与挑战。编程教育作为培养逻辑思维和创新能力的关键,逐渐融入K12课程。朴素贝叶斯算法以其简单高效的特点,成为理想的入门算法。通过趣味编程如Scratch,结合生活实例、可视化工具和项目实践,激发学生兴趣,降低学习难度,提升其对机器学习的理解和应用能力。这不仅为学生打开人工智能的大门,也为未来科技发展奠定基础。
215 23
|
11月前
|
网络协议 算法 网络性能优化
|
存储 安全 Linux
【操作系统篇】第三篇——进程(概念,组成,状态与转换,控制以及通信)
【操作系统篇】第三篇——进程(概念,组成,状态与转换,控制以及通信)
【操作系统篇】第三篇——进程(概念,组成,状态与转换,控制以及通信)