Return to site

Text Box Vba Excel For Mac

broken image


Enabling file access on Excel 2016 for macs. In the 2016+ versions of Excel, VBA operates in a sandbox which means that explicit permission has to be granted if any files are to be opened. This is not required if the file has been identified with a appleScript 'fileopen dialog box. A text box is an empty field where a user can fill in a piece of text. To create a text box in Excel VBA, execute the following steps. On the Developer tab, click Insert.

Excel Vba Text Format

The VBA MsgBox function is used to display messages to the user in the form of a message box.

We can configure the message box to provide the user with a number of different buttons such as Yes, No, Ok, Retry, Abort, Ignore and Cancel. The MsgBox function will then return the button that was clicked.

Contents

  • 3 VBA MsgBox Parameters

Related Links

Basic VBA MsgBox Examples

In most cases, you will use MsgBox to simply display a message or to ask the user to click Yes/No or Ok/Cancel. The following code shows how to display a simple message box:

Text Box Vba Excel For Mac

VBA MsgBox Parameters

The parameters of the message box are as follows:

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

prompt – This is the message text that will be displayed.

buttons[optional] – This parameter does many things including setting the buttons, icons, select button, modal type etc. If this parameter is not used a message box with the Ok button and no icon is displayed. See the next section for more about this parameter.

Box

title[optional] – this is the title that will appear at the top of the message box. The default is 'Microsoft Excel'.

helpfile, context[optional] – These parameters are used to reference a help file and location of specific help text. It is very unlikely you use this unless you are creating an application for a third party and help files are a requirement.

VBA MsgBox Return Values

The following are all the return values for the MsgBox function:

vbOk
vbCancel
vbAbort
vbRetry
vbIgnore
vbYes
vbNo

Each of these values represents a button that was clicked.

VBA MsgBox Yes No

We can use the message box to get a simple response from the user. For example, we can ask the user a question and they can respond by clicking on the Yes or No button. The return value from the MsgBox function tells us which button was clicked.

If we want to get a Yes/No response from the user we can do it with the following code:

Note: When we return a value from the message box we must use parenthesis around the parameters or we will get the 'Expected end of statement' error.

We can also use a variable to store the response from the MsgBox. We would normally do this if we want to use the response more than once. For example, if there were three buttons:

Excel

VBA MsgBox Button Parameters

The button parameter of MsgBox allows us to configure the message box in many ways. The table below shows the different options:

ConstantGroupTypeDescription
vbOKOnly1ButtonsOk button.
vbOKCancel1ButtonsOk and cancel buttons.
vbAbortRetryIgnore1ButtonsAbort, Retry and Ignore buttons.
vbYesNoCancel1ButtonsYes, No and Cancel buttons.
vbYesNo1ButtonsYes and No buttons.
vbRetryCancel1ButtonsRetry and Cancel buttons.
vbCritical2IconCritical Message icon.
vbQuestion2IconWarning Query icon.
vbExclamation2IconWarning Message icon.
vbInformation2IconInformation Message icon.
vbDefaultButton13Default buttonSet button 1 to be selected.
vbDefaultButton23Default buttonSet button 2 to be selected.
vbDefaultButton33Default buttonSet button 3 to be selected.
vbDefaultButton43Default buttonSet button 4 to be selected. Note that there will only be four buttons if the help button is included with vbAbortRetryIgnore or vbYesNoCancel.
vbApplicationModal4ModalCannot access Excel while the button is displayed. Msgbox is only displayed when Excel is the active application.
vbSystemModal4ModalSame as vbApplicationModal but the message box is displayed in front of all applications.
vbMsgBoxHelpButton5OtherAdds a help button
vbMsgBoxSetForeground5OtherSets the message box windows to be the foreground window
vbMsgBoxRight5OtherRight aligns the text.
vbMsgBoxRtlReading5OtherSpecifies text should appear as right-to-left reading on Hebrew and Arabic systems.

These constants work as follows:

  1. The constants in group 1 are used to select the buttons.
  2. The constants in group 2 are used to select icons.
  3. The constants in group 3 are used to select which button is highlighted when the message box appears.
  4. The constants in group 4 are used to set the modal type of the message box.
  5. The constants in group 5 are used for various settings.

When we use MsgBox, we can combine items from each group by using the plus sign. For example:

Mac

VBA MsgBox Parameters

The parameters of the message box are as follows:

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

prompt – This is the message text that will be displayed.

buttons[optional] – This parameter does many things including setting the buttons, icons, select button, modal type etc. If this parameter is not used a message box with the Ok button and no icon is displayed. See the next section for more about this parameter.

title[optional] – this is the title that will appear at the top of the message box. The default is 'Microsoft Excel'.

helpfile, context[optional] – These parameters are used to reference a help file and location of specific help text. It is very unlikely you use this unless you are creating an application for a third party and help files are a requirement.

VBA MsgBox Return Values

The following are all the return values for the MsgBox function:

vbOk
vbCancel
vbAbort
vbRetry
vbIgnore
vbYes
vbNo

Each of these values represents a button that was clicked.

VBA MsgBox Yes No

We can use the message box to get a simple response from the user. For example, we can ask the user a question and they can respond by clicking on the Yes or No button. The return value from the MsgBox function tells us which button was clicked.

If we want to get a Yes/No response from the user we can do it with the following code:

Note: When we return a value from the message box we must use parenthesis around the parameters or we will get the 'Expected end of statement' error.

We can also use a variable to store the response from the MsgBox. We would normally do this if we want to use the response more than once. For example, if there were three buttons:

VBA MsgBox Button Parameters

The button parameter of MsgBox allows us to configure the message box in many ways. The table below shows the different options:

ConstantGroupTypeDescription
vbOKOnly1ButtonsOk button.
vbOKCancel1ButtonsOk and cancel buttons.
vbAbortRetryIgnore1ButtonsAbort, Retry and Ignore buttons.
vbYesNoCancel1ButtonsYes, No and Cancel buttons.
vbYesNo1ButtonsYes and No buttons.
vbRetryCancel1ButtonsRetry and Cancel buttons.
vbCritical2IconCritical Message icon.
vbQuestion2IconWarning Query icon.
vbExclamation2IconWarning Message icon.
vbInformation2IconInformation Message icon.
vbDefaultButton13Default buttonSet button 1 to be selected.
vbDefaultButton23Default buttonSet button 2 to be selected.
vbDefaultButton33Default buttonSet button 3 to be selected.
vbDefaultButton43Default buttonSet button 4 to be selected. Note that there will only be four buttons if the help button is included with vbAbortRetryIgnore or vbYesNoCancel.
vbApplicationModal4ModalCannot access Excel while the button is displayed. Msgbox is only displayed when Excel is the active application.
vbSystemModal4ModalSame as vbApplicationModal but the message box is displayed in front of all applications.
vbMsgBoxHelpButton5OtherAdds a help button
vbMsgBoxSetForeground5OtherSets the message box windows to be the foreground window
vbMsgBoxRight5OtherRight aligns the text.
vbMsgBoxRtlReading5OtherSpecifies text should appear as right-to-left reading on Hebrew and Arabic systems.

These constants work as follows:

  1. The constants in group 1 are used to select the buttons.
  2. The constants in group 2 are used to select icons.
  3. The constants in group 3 are used to select which button is highlighted when the message box appears.
  4. The constants in group 4 are used to set the modal type of the message box.
  5. The constants in group 5 are used for various settings.

When we use MsgBox, we can combine items from each group by using the plus sign. For example:

This displays the message box with the Ok and Cancel button, the critical message icon, with the Ok button highlighted and the message box will display only when Excel is the active application.

This displays the message box with the Yes and No button, the warning query icon, with the No button highlighted and the message box will display in front of all applications.

Important: Each time we use the MsgBox function we can only select one of each:

  1. button type
  2. icon type
  3. default button
  4. modal type

In other words, we can only select one item from each of the first 4 groups.

The next section shows some more examples of using the message box.

VBA MsgBox Examples

The following examples show to display the various icons with the Yes and No buttons:

The following examples show the Abort/Retry/Ignore button plus the help button with different buttons selected:

The following examples show some button selections and the title parameter being set:


Excel Vba Text File Open

What's Next?

Free VBA Tutorial If you are new to VBA or you want to sharpen your existing VBA skills then why not try out the The Ultimate VBA Tutorial.

Related Training: Get full access to the Excel VBA training webinars and all the tutorials.

(NOTE: Planning to build or manage a VBA Application? Learn how to build 10 Excel VBA applications from scratch.)

Get the Free eBook

Text Box Vba Excel For Mac Versions

Please feel free to subscribe to my newsletter and get exclusive VBA content that you cannot find here on the blog, as well as free access to my eBook, How to Ace the 21 Most Common Questions in VBA which is full of examples you can use in your own code.





broken image