• 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 显示“关键信息”图标
    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)

  • 相关阅读:
    .net 中 数据库的查询参数写法。微软其他开发环境同理
    【开源】女人值钱计算器,C++
    远程桌面的端口修改
    .net 中使用ActiveX控件的自动创建的包装器的问题(自动生成的Interop.Ax*Lib.dll)
    ASP.NET站点的同时部署给不同的客户。通过数据库配置站点的Top、版权、站点名称
    当下常见的十大(现在补充了,是十一大手机操作系统)手机(平板)操作系统
    项目外包,类似QQ这样界面的客户端,要求界面漂亮,功能是帮助客户完成在线业务的功能。
    stdoled.dll 的问题
    dotnet调用外部dll中,参数数据类型的问题
    前两天用VC6做的修改远程桌面端口的命令行小程序,源码。
  • 原文地址:https://www.cnblogs.com/shida-liu/p/9292909.html
Copyright © 2020-2023  润新知