MsgBox Function

Applies to: Access for Microsoft 365, Access 2019, Access 2016, Access 2013, Access 2010, Access 2007.

In an Access desktop database, the MsgBox Function presents a message in a dialogue box, waits for the user to select a button, and brings back an Integer symbolising which button the user pressed.


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

The MsgBox function syntax has these arguments:

promptRequired. String expression displayed as the message in the dialogue box. The maximum length of prompt is approximately 1024 characters, depending on the width of the characters used. If prompt consists of more than one line, you can separate the lines using a carriage return character (Chr(13)), a linefeed character (Chr(10)), or carriage return – linefeed character combination (Chr(13) & Chr(10)) between each line.
buttonsOptional. numeric expression that is the sum of values specifying the number and type of buttons to display, the icon style to use, the identity of the default button, and the modality of the message box. If omitted, the default value for buttons is 0.
titleOptional. String expression displayed in the title bar of the dialogue box. If you omit title, the application name is placed in the title bar.
helpfileOptional. String expression that identifies the Help file to use to provide context-sensitive Help for the dialogue box. If helpfile is provided, context must also be provided.
contextOptional. Numeric expression that is the Help context number assigned to the appropriate Help topic by the Help author. If context is provided, helpfile must also be provided.


The buttonsargument settings are:

vbOKOnly0Display OK button only.
vbOKCancel1Display OK and Cancel buttons.
vbAbortRetryIgnore2Display AbortRetry, and Ignore buttons.
vbYesNoCancel3Display YesNo, and Cancel buttons.
vbYesNo4Display Yes and No buttons.
vbRetryCancel5Display Retry and Cancel buttons.
vbCritical16Display Critical Message icon.
vbQuestion32Display Warning Query     icon.
vbExclamation48Display Warning Message     icon.
vbInformation64Display Information Message icon.
vbDefaultButton10First button is default.
vbDefaultButton2256Second button is default.
vbDefaultButton3512Third button is default.
vbDefaultButton4768Fourth button is default.
vbApplicationModal0Application modal; the user must respond to the message box before continuing work in the current application.
vbSystemModal4096System modal; all applications are suspended until the user responds to the message box.
vbMsgBoxHelpButton16384Adds Help button to the message box
VbMsgBoxSetForeground65536Specifies the message box window as the foreground window
vbMsgBoxRight524288Text is right aligned
vbMsgBoxRtlReading1048576Specifies text should appear as right-to-left reading on Hebrew and Arabic systems

Tip: In Access 2010, the Expression Builder has IntelliSense, so you can see what arguments your expression requires. 

The first group of values (0–5) describes the number and type of buttons displayed in the dialogue box; the second group (16, 32, 48, 64) describes the icon style; the third group (0, 256, 512) determines which button is the default; and the fourth group (0, 4096) determines the modality of the message box. When adding numbers to create a final value for the buttons argument, use only one number from each group.

Note: These constants are specified by Visual Basic for Applications. As a result, the names can be used anywhere in your code in place of the actual values.

Return Values



When both helpfile and context are provided, the user can press F1 (Windows) or HELP (Macintosh) to view the Help topic corresponding to the context. Some host applications, for example, Microsoft Excel, also automatically add a Help button to the dialogue box.

If the dialogue box displays a Cancel button, pressing the ESC key has the same effect as clicking Cancel. If the dialogue box contains a Help button, context-sensitive Help is provided for the dialogue box. However, no value is returned until one of the other buttons is clicked.

Note: To specify more than the first named argument, you must use MsgBox in an expression. To omit some positional arguments, you must include the corresponding comma delimiter.


Note: Examples that follow demonstrate the use of this function in a Visual Basic for Applications (VBA) module.

This example uses the MsgBox function to display a critical-error message in a dialogue box with Yes and No buttons. The No button is specified as the default response. The value returned by the MsgBox function depends on the button chosen by the user. This example assumes that DEMO.HLP is a Help file that contains a topic with a Help context number equal to 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 ' User chose Yes.
MyString = "Yes" ' Perform some action.
Else ' User chose No.
MyString = "No" ' Perform some action.
End If

This information was compiled using information courtesy of © Microsoft 2020. All rights reserved.

Leave a Reply

%d bloggers like this: