zoukankan      html  css  js  c++  java
  • 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。

    3Button参数
           用于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。

     
    1. Dim Msg,Style,Title,Help,Ctxt,Response,MyString  
    2. '定义消息文本  
    3. Msg="Do you want to continue ?"  
    4. ' 定义按钮  
    5. Style = vbYesNo + vbCritical + vbDefaultButton2  
    6. ' 定义标题文本  
    7. Title = "MsgBox Demonstration"  
    8. ' 定义帮助文件   
    9. Help = "DEMO.HLP"  
    10. ' 定义帮助主题   
    11. Ctxt = 1000      
    12. Response = MsgBox(Msg, Style, Title, Help, Ctxt)  
    13. If Response = vbYes Then    ' 用户按下“是”  
    14.     MyString = "Yes"  
    15. Else    ' 用户按下“否”  
    16.     MyString = "No"  
    17. End If  

    (2)只显示某消息

     
    1. MsgBox “Hello!”   


    (3)将消息框返回的结果赋值给变量

    1. Ans=MsgBox(“Continue?”,vbYesNo)  
    2. If MsgBox(“Continue?”,vbYesNo)<>vbYes Then Exit Sub  

    (4)使用常量的组合,赋值组Config变量,并设置第二个按钮为缺省按钮

      

    1. Config=vbYesNo+vbQuestion+vbDefaultButton2  


    (5)若要在消息中强制换行,可在文本中使用vbCrLf(或vbNewLine)常量,用&加空格与字符隔开。如

     
    1. MsgBox “This is the first line.” & vbNewLine & “Second line.”  

    (6)可以在消息框中使用vbTab常量插入一个制表符。下面的过程使用一个消息框来显示5×5单元格区域中的所有值,用vbTab常量分隔列并使用vbCrLf常量插入一个新行。注意在MsgBox函数最多只显示1024个字符,因此限制了可显示的单元格数。

    1. Option Explicit  
    2. Sub ShowRangeValue()  
    3.   Dim Msg As String  
    4.   Dim r As Integer, c As Integer  
    5.   Msg = ""  
    6.   For r = 1 To 5  
    7.     For c = 1 To 5  
    8.       Msg = Msg & Cells(r, c) & vbTab  
    9.     Next c  
    10.     Msg = Msg & vbCrLf  
    11.   Next r  
    12.   MsgBox Msg  
    13. End Sub  

    (7)在消息框语句中运用工作表函数以及设置显示的数置格式,如下面语句所示:

     
    1. 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

  • 相关阅读:
    week4
    week3
    2017福州大学面向对象程序设计寒假作业二
    Week2
    10个android开发必备的开源项目
    Day Ten
    Day Nine
    Day Eight
    Day Seven
    Day Six
  • 原文地址:https://www.cnblogs.com/mq0036/p/6169957.html
Copyright © 2011-2022 走看看