如何在excel中创建消息框函数?

我学到的关于 VBA 的第一件事是如何使用消息框(“msgbox 函数”)。它就像 Excel 窗口上的一个简单的弹出框,用于显示特定消息。如果您考虑一下,您可以通过两种方式使用它。

  • 向用户传递消息。
  • 从用户那里获取简单的响应。

大多数 VBA 程序员在他们的宏代码中使用它来使它们更具交互性,如果您不知道它,我敢打赌读完本文后您会爱上它。

专家提示:如果您是 VBA 初学者,那么了解有关 VBA 消息框的更多信息可能是个好主意。

因此,今天在这篇文章中,我想与您分享有关在 Excel 中使用消息框的所有详细信息以及一些实际示例。

…让我们开始吧。

句法

=MSGBOX(提示,[按钮],[标题],[帮助文件,上下文])

msgbox vba函数语法

  • 提示 用于显示为消息的字符串表达式。最大字符长度为 1024,具体取决于字符宽度。
  • [buttons] 您可以使用此参数来指定按钮、图标样式、按钮标识和消息框模式。
  • [title] 您可以使用此参数指定消息框的标题文本。
  • [helpfile] 此参数将帮助您为用户指定帮助文件。用户可以使用帮助按钮访问此帮助文件。如果指定帮助文件,则必须指定上下文编号。
  • [上下文] 用于从帮助菜单分配帮助主题的数字表达式。

注意:在上面的列表中,方括号中的参数是可选的,您可以跳过来指定它们。

如何自定义消息框并使用不同的按钮

您可以使用所有可用选项轻松自定义 VBA 消息框。让我们看一下这些选项。

#1.仅vbOK

这为您提供了一个简单的“确定”按钮。用户阅读消息后可以单击它来关闭它。单击“确定”按钮后,您还可以另外使用宏来运行。

在 OKOnly() 下

MsgBox 提示 := “这是一个 MsgBox”, _

按钮:=vbOKOnly,_

标题:=“邮箱”

结束字幕

#2. vb确定取消

该常量为您提供了“确定”和“取消”按钮。用户现在有两个选择:按“确定”继续或取消退出。

在 OKCancel() 下

MsgBox提示:= »你还好吗? », _

按钮:=vbOKCancel,_

标题:=“邮箱”

结束字幕

#3。 vbAbort重试忽略

这允许您显示“关于”、“重试”和“跳过”三个按钮。用户可以中止操作、重试或忽略它。

在 OKCancel() 下

MsgBox提示:= »你还好吗? », _

按钮:=vbOKCancel,_

标题:=“邮箱”

结束字幕

#4。 vb是否取消

该常量显示三个按钮,分别是“是”、“否”和“取消”。用户可以选择“是”接受并继续,“否”拒绝或取消关闭消息框。

在 YesNoCancel() 下

MsgBox Prompt := “现在你有三个按钮”, _

按钮:=vbYesNoCancel, _

标题:=“邮箱”

结束字幕

#5。 vb是否

该常量显示“是”和“否”两个按钮。用户可以单击“是”接受并继续,或者单击“否”拒绝。

在 YesNo() 下

MsgBox Prompt := “现在你有两个按钮”, _

按钮:=vbYesNo, _

标题:=“邮箱”

结束字幕

#6。 vb重试取消

现在它显示两个按钮,重试和取消。您可以使用它来要求用户重试操作或取消操作。

Sub RetryCancel()MsgBox Prompt:=”请重试”, _Buttons:=vbRetryCancel, _Title:=”MsgBox”End Sub

#7. vb评论

该常量在消息框中显示一个图标,表明该消息很重要。

亚临界()

MsgBox 提示 := “这很关键”, _

按钮:=vbCritical,_

标题:=“邮箱”

结束字幕

#8。 vb问题

当向用户询问问题时可以使用该常量。

子问题()

MsgBox 提示 := »现在该怎么办? », _

按钮:=vbQuestion,_

标题:=“邮箱”

结束字幕

#9。 vb感叹号

该常量将显示带有消息的感叹号图标。

感叹号下()

MsgBox 提示 := »现在该怎么办? », _

按钮:=vb感叹号,_

标题:=“邮箱”

结束字幕

#十。 vb信息

它将显示一个图标,表明该消息是信息。

Sub Information()MsgBox Prompt:=”现在做什么?”, _Buttons:=vbInformation, _Title:=”MsgBox”End Sub

#11。 vb默认按钮1

使用此常量将消息框中的第一个按钮指定为默认按钮。

Sub DefaultButton1()MsgBox Prompt:=”Button1 突出显示?”, _Buttons:=vbYesNoCancel + vbMsgBoxHelpButton + vbDefaultButton1, _Title:=”MsgBox”End Sub

#12。 vb默认按钮2

使用此常量将消息框中的第二个按钮指定为默认按钮。

Sub DefaultButton2()MsgBox Prompt:=”Button2 突出显示?”, _Buttons:=vbYesNoCancel + vbMsgBoxHelpButton + vbDefaultButton2, _Title:=”MsgBox”End Sub

#13。 vb默认按钮3

使用此常量将消息框中的第三个按钮指定为默认按钮。

Sub DefaultButton3()MsgBox Prompt:=”Button3 突出显示?”, _Buttons:=vbYesNoCancel + vbMsgBoxHelpButton + vbDefaultButton3, _Title:=”MsgBox”End Sub

#14。 vb默认按钮4

使用此常量将消息框中的第四个按钮指定为默认按钮。

Sub DefaultButton4()MsgBox Prompt:=”Button4 突出显示?”, _Buttons:=vbYesNoCancel + vbMsgBoxHelpButton + vbDefaultButton4, _Title:=”MsgBox”End Sub

#15。 vb应用程序模式

该常量将暂停应用程序(Excel),用户必须回复msgbox才能使用应用程序。

在 OKOnly() 下

MsgBox 提示 := “这是一个 MsgBox”, _

按钮:=vbOKOnly,_

标题:=“邮箱”,_

结束字幕

#16。 vb系统模态

该常量将暂停操作系统中的所有应用程序,用户必须首先响应消息框。

Sub ApplicationModal()MsgBox Prompt := »这是应用程序模式», _Buttons :=vbOK + vbApplicationModal, _Title := »MsgBox »End Sub

#17。 vbMsgBox帮助按钮

使用此常量向您的邮箱添加帮助按钮。您可以添加帮助文件和上下文编号以使用帮助按钮。

Sub HelpButton()MsgBox Prompt:=”使用帮助按钮”, _Buttons:=vbOK + vbMsgBoxHelpButton, _Title:=”MsgBox”, _HelpFile:=”C:UsersPuneet GogiaDesktopsamplehelp.chm”, _Context:=101End Sub

一旦用户单击帮助按钮,就会出现帮助菜单。

#18。 vbMsgBoxSetForeground

该常量将帮助您使消息框窗口成为前台窗口。

Sub SetForeground()MsgBox Prompt:=”此 MsgBox 在前台”, _Buttons:=vbOK + vbMsgBoxSetForeground, _Title:=”MsgBox”End Sub

#19。 vbMsgBoxRight

文本将使用此常量右对齐。

在 MsgBoxRight() 下

MsgBox Prompt := “文字在右边”, _

按钮:=vbOK + vbMsgBoxRight, _

标题:=“邮箱”

结束字幕

#20。 vbMsgBoxRtl读取

使用此常量,消息框将向右翻转。该常数主要是为希伯来语和阿拉伯语系统设计的。

在 MsgBoxRtlRead() 下

MsgBox Prompt := “此框已翻转”, _

按钮:=vbOK + vbMsgBoxRtlRead, _

标题:=“邮箱”

结束字幕

返回值

每次用户通过单击其中一个按钮来响应消息框时,都会生成一个数字。这将帮助您识别用户单击了哪个按钮。

持续的
价值
描述
1
好的
取消
2
取消
vb中止
3
流产
vb再试一次
4
重新开始
跳过
5
忽略
vb是的
6
是的
vb号
7

在 Excel 中使用 VBA 消息框函数的真实示例

这里我列出了一些现实生活中的 VBA 消息框示例,我相信这些示例会对您的使用有所启发。

#1.使用 VBA MsgBox 执行宏

现在,借助 msgbox 函数,您可以在运行宏之前提示用户。我们看下面的宏就可以理解了。

在 SaveThis() 下

将结果暗淡为整数

Result = MsgBox(“你想保存这个文件吗?”, vbOKCancel)

如果结果 = vbOK 那么

活动工作簿.保存

结束字幕

使用 vba msgbox 保存工作簿

您可以要求用户保存工作簿,如果用户单击“确定”按钮,宏代码将保存工作簿。

#2.将表格插入消息框

您可以使用 vbTab 在消息框中输入表格数据。在此示例中,表格从单元格 A1 开始。

在 AddToMsgBox() 下

暗淡消息作为字符串

调暗 r 作为 int

将 c 调暗为 int

将 rc 调暗为 int

将 cc 调暗为 int

将 myRows 调暗为范围

将 myColumns 调暗为范围

消息=“”

设置 myRows = Range(“A:A”)

设置 myColumns = Range(“1:1”)

rc = Application.CountA(myRows)

cc = Application.CountA(myColumns)

对于 r = 1 至 rc 对于 c = 1 至 cc

Msg = Msg & Cells(r, c).Text

如果 c <= cc 那么

消息 = 消息 & vbTab

下一个 cmsg = Msg & vbCrLf

下一个

消息框消息

结束字幕

#3。打开文件时显示消息框

如果您查看下面的宏,我使用 auto_open 创建一条消息,以在打开工作簿时显示。

在 auto_open() 下

MsgBox“欢迎使用 Exceladvisor 并感谢您下载此文件”_

+ vbNewLine + vbNewLine + 》这里你会找到MsgBox函数的详细解释。 » _

+ vbNewLine + vbNewLine + “而且,不要忘记查看其他很酷的东西。 »

结束字幕

要点

  1. 如果不使用帮助按钮作为第四个按钮,则无法向消息框添加四个按钮。
  2. 要为消息框创建帮助文件,您可以参考以下示例文件。

示例文件

请在此处下载此示例文件以了解更多信息。

结论

消息框不仅可以帮助您传达消息,还可以给用户留下创造性的印象。您可以向他们发送消息并获得简单的回复。

就像我说的,如果您是 VBA 新手,学习如何使用消息框是最好的事情之一。我希望这篇文章可以帮助您更接近掌握 VBA 的梦想,但现在告诉我一件事。

您认为 MsgBox 函数是 VBA 中最酷的功能之一吗?

请务必在评论部分与我分享您的意见,我很乐意听取您的意见,并且不要忘记与您的朋友分享此技巧。

了解有关 VBA 的更多信息

添加评论

您的邮箱地址不会被公开。 必填项已用 * 标注