VBA MsgBox – How to use

Syntax of MsgBox function in VBA:

The syntax of VBA Msgbox is as follows:

MsgBox (Text_String [, buttons] [, title] [, helpfile, context])

Here ‘Text_String’ is the message that you want the msgbox to display. The maximum length of ‘Text_String’ is 1024 characters.

‘buttons’ parameter specifies the type of buttons and icon that you want to be shown on the message box. It is an optional parameter. If you omit it then msgbox shows the default ‘vbOKOnly’ button.

‘title’ refers to the text displayed in the title bar of message box. This is an optional parameter.

‘helpfile’ is a string parameter that specifies the help file to be used for the dialog box. It is also an optional parameter but it becomes mandatory if ‘context’ parameter is to be used.

‘context’ is a numeric parameter that specifies the number assigned to the appropriate Help topic. It is an optional parameter but it becomes mandatory if ‘helpfile’ parameter is used.

Different values of ‘buttons’ parameter in Msgbox:

In VBA message box, ‘buttons’ parameter can have following values:

ConstantDescription
vbOKOnlyIt displays a single OK button
vbOKCancelIt displays two buttons OK and Cancel.
vbAbortRetryIgnoreIt displays three buttons AbortRetry, and Ignore.
vbYesNoCancelIt displays three buttons YesNo, and Cancel.
vbYesNoIt displays two buttons Yes and No.
vbRetryCancelIt displays two buttons Retry and Cancel.
vbCriticalIt displays a Critical Message icon.
vbQuestionIt displays a Query icon.
vbExclamationIt displays a Warning Message icon.
vbInformationIt displays an Information Message icon.
vbDefaultButton1First button is treated as default.
vbDefaultButton2Second button is treated as default.
vbDefaultButton3Third button is treated as default.
vbDefaultButton4Fourth button is treated as default.
vbApplicationModalThis suspends the current application till the user responds to the message box.
vbSystemModalThis suspends all the applications till the user responds to the message box.
vbMsgBoxHelpButtonThis adds a Help button to the message box.
VbMsgBoxSetForegroundEnsures that message box window is foreground.
vbMsgBoxRightThis sets the Text to right aligned
vbMsgBoxRtlReadingThis option specifies that text should appear as right-to-left.

 

Examples of Message boxes in VBA:

Now, let’s move on to some particle examples to understand the use of msgbox:

Example 1: Basic message box:

MsgBox Example-1

  1. Sub Msg_exe()  
  2. MsgBox "This is a message!"  
  3. End Sub  

Example 2: Message box with a title:

MsgBox Example-2

  1. Sub Msg_exe()  
  2. MsgBox "This is a message!", , "This is the Title"  
  3. End Sub  

Example 3:  Exclamation message box:

MsgBox Example-3

  1. Sub Msg_exe()  
  2. MsgBox "This is a message!", vbExclamation, "This is the Title"  
  3. End Sub  

Example 4: Message box with multiple lines

MsgBox Example-4

  1. Sub Msg_exe()  
  2. MsgBox "Message Line 1" & vbCrLf & "Message Line 2", , "This is the Title"  
  3. End Sub  

Note 1: Here ‘vbCrLf’ is the new line character in VBA. It can also be replaced by ‘vbNewLine’.

Example 5: Critical Message box with three buttons

MsgBox Example-5

  1. Sub Msg_exe()  
  2. result = MsgBox("Critical Error Encountered", vbAbortRetryIgnore + vbCritical, "Error Encountered")  
  3. End Sub  

Note 1:  Here I have used two values for the ‘button’ parameter separated by a ‘+’ sign.

Note 2: You will notice that here I have used a variable ‘result’ for accepting the value returned by Msgbox.

Values returned by MsgBox Function:

As I have foretold that VBA MsgBox function returns a value based on the user input. These values can be anyone of the below ones:

ValueDescription
1Specifies that OK button is clicked.
2Specifies that Cancel button is clicked.
3Specifies that Abort button is clicked.
4Specifies that Retry button is clicked.
5Specifies that Ignore button is clicked.
6Specifies that Yes button is clicked.
7Specifies that No button is clicked.

 

How you can decide program flow based on the values returned by Message Box?

In the above table you can see that VBA Msgbox function returns some integer values corresponding to button clicked on the dialog box. You can check this number using an IF Statement or by using a Select case statement.

In the below example I have done the same:

  1. Sub Msg_exe()  
  2. Dim Ret_type As Integer  
  3. Dim strMsg As String  
  4. Dim strTitle As String  
  5. ' Dialog Message  
  6. strMsg = "Click any one of the below buttons."  
  7. ' Dialog's Title  
  8. strTitle = "Some Title"  
  9. 'Display MessageBox  
  10.     Ret_type = MsgBox(strMsg, vbYesNoCancel + vbQuestion, strTitle)  
  11. ' Check pressed button  
  12. Select Case Ret_type  
  13. Case 6  
  14.     MsgBox "You clicked 'YES' button."  
  15. Case 7  
  16.     MsgBox "You clicked 'NO' button."  
  17. Case 2  
  18.     MsgBox "You clicked 'CANCEL' button."  
  19. End Select  
  20. End Sub  

So, this was all about the msgbox function in VBA. Do let me know if you have any queries related to the topic

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READme.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值