VBA-使用msgbox对话框

我怕爱的太早我们不能终老 提交于 2020-03-01 00:29:47

使用msgbox对话框

在使用 Excel 的过程中,如果需要向用户显示简单的提示信息,可以使用 MsgBox 函数显示一个消息框,其格式为:MsgBox(prompt[, buttons] [, title] [, helpfile, context])

  • prompt:必须项,代表在消息框中作为信息显示的字符或字符串
  • button:可选项,用于指定消息框中显示按钮的数目及类型、使用的图标样式、缺省按钮以及消息框的强制回应等,若省略则只显示“确定”按钮
  • title:可选项,在消息框标题栏中作为标题的字符或字符串
  • helpfile和context:可选项,用来为消息框提供上下文相关帮助的帮助文件和帮助主题。如果提供了其中一个参数,则必须提供另一个参数,两者缺一不可。

下面是一个最简单的msgbox对话框:

Sub test()
    MsgBox "欢迎一起学习Excel"
End Sub

1、制定个性化消息框

通过上文可知,对函数中的选项进行赋值可以得到个性化的消息框,下面对button参数进行详细解释:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
如:

Sub test1()
    MsgBox "欢迎一起学习Excel", vbOKCancel + vbInformation + vbDefaultButton2, _
    Title:="交小通"
End Sub

2、获得消息框的返回值

如果希望能根据用户对于消息框的不同选择,进行相应的操作,可以对消息框的返回值进行判断。

常数 描述
vbOK 1 确定
vbCancel 2 取消
vbAbort 3 放弃
vbRetry 4 重试
vblgnore 5 忽略
vbYes 6
vbNo 7
Sub test2()
    Dim a As Integer
    a = MsgBox("是否保存", vbYesNoCancel + vbInformation)
    If a = 2 Then
        MsgBox "取消"
    ElseIf a = 6 Then
        MsgBox "是"
    Else
        MsgBox "否"
    End If
End Sub

3、在消息框中排版

如果在消息框中显示的字符串很长,比如是一段多行的文字内容,为了达到美观的效果,需要首字缩进,并将各行分隔开来,但是一般情况下消息框的文字不会很多,所以用到的地方不太多。

常数 等于 描述
vbCrLf Chr(13)+Chr(10) 回车加换行
vbCr Chr(13) 回车
vbLf Chr(10) 换行
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!