【Excel VBA】MsgBox関数の使い方(1)メッセージボックスの表示方法|Excel VBA |
Excel VBAのMsgBox関数を使うことで、画面にメッセージボックスを表示し、ユーザーにメッセージを通知したり確認を求めたりすることができます。表示するメッセージやボタンの種類、アイコンなどを細かく設定でき、ボタンの選択結果に応じてその後の処理を分岐させることも可能です。
本記事では、MsgBox関数の基本的な構文やオプションの指定方法を解説します。メッセージボックスを効果的に活用する方法を学んでいきましょう!
MsgBox関数の構文は次のとおりです。
[prompt]は必ず指定します。[buttons]と[title]は省略することもできます。
MsgBox (prompt [,buttons] [,title])
表示する文字
メッセージボックスに
表示されるボタンの種類
メッセージボックスの
タイトルバーに表示される文字列
「処理を開始します」というメッセージボックスを表示します。
文字列を表示するには、表示させたい文字を””で囲みます。
Sub start()
Msgbox "処理を開始します"
End Sub

メッセージボックス内で改行するには、改行したい部分に改行コードvbCrLf を挿入します。文字列と改行コードは & でつなぎます。
Sub start()
Msgbox "処理を開始します。" & vbCrLf & "よろしいですか?"
End Sub

メッセージボックスに、[OK]ボタン以外のボタンやアイコンを表示するには、引数[Buttons]に指定します。
Sub start()
MsgBox "処理を開始します" , vbOKCancel
End Sub

■ボタンに関する定数
| 定数 | 内容 |
|---|---|
| vbOKOnly | [OK]ボタンのみを表示(※規定値) |
| vbOKCancel | [OK][キャンセル]の2つのボタンを表示 |
| vbAbortRetryIgnore | [中止][再試行][無視]の3つのボタンを表示 |
| vbYesNoCancel | [はい][いいえ][キャンセル]の3つのボタンを表示 |
| vbYesNo | [はい][いいえ]の2つのボタンを表示 |
| vbRetryCancel | [再試行][キャンセル]の2つのボタンを表示 |
[OK]ボタンと[キャンセル]ボタンを表示し、さらに注意アイコンを表示したいときは「+」で連結します。
Sub start ()
MsgBox "処理を開始します" , vbOKCancel + vbExclamation
End Sub

■アイコンに関する定数
| 定数 | アイコン | 内容 |
|---|---|---|
| vbCritical | ![]() |
警告メッセージアイコンを表示 |
| vbQuestion | ![]() |
問い合わせメッセージアイコンを表示 |
| vbExclamation | ![]() |
注意メッセージアイコンを表示 |
| vbInformation | ![]() |
情報メッセージアイコンを表示 |
メッセージボックスのタイトルを表示するには、引数[Title]に指定します。
タイトルに表示させたい文字は””で囲みます。
Sub start ()
MsgBox "処理を開始します" , vbOKCancel + vbExclamation , "確認"
End Sub

ここまで、メッセージボックスのいろいろな表示方法をご紹介しました。
メッセージボックスに複数のボタンを表示したとき、ユーザーがどのボタンをクリックしたかを判定する方法については、「MsgBox関数の使い方(2) - ユーザーが選択したボタンの処理」を参照してください。