本記事の内容
Excel VBAでユーザーの選択、処理の結果を通知に使えるメッセージボックスを解説
→ MsgBoxを使用
こんな方におすすめ
- Excel VBAでユーザーに処理を選択させるメッセージを表示したい方
- ExcelVBAにて処理の完了を通知するメッセージを表示したい方
- VBA初心者の方
MsgBoxとは?
MsgBoxとはプログラム中にメッセージを表示するための関数です。
関数の仕様は下記の通りです。
MsgBox 文字列
MsgBox(メッセージ文字列, ボタン, タイトル文字列)
MsgBoxの使用例1:処理結果を表示
処理結果を表示するコードは下記の通りです。
Sub sample()
'メッセージボックスを表示
MsgBox "sampleマクロが完了しました"
End Sub
上記のマクロを実行すると下記のようなメッセージボックスが表示されます。

MsgBoxの使用例2:ユーザーが「はい」「いいえ」を選択
ユーザーが処理を選択できるメッセージボックスコードは下記の通りです。
(下記は「はい」「いいえ」を選べます)
Sub sample()
Dim result As Integer
'メッセージボックスを表示
result = MsgBox("処理を続けますか?", vbYesNo, "処理継続")
'メッセージボックスの結果に合わせて処理を分岐
Select Case result
Case vbYes
'「はい」が選択された場合:A1セルに"はいが選択されました"を入力
Range("A1").Value = "はいが選択されました"
Case vbNo
'「いいえ」が選択された場合:A1セルに"いいえが選択されました"を入力
Range("A1").Value = "いいえが選択されました"
Case Else
'「はい」「いいえ」以外が選択
End Select
End Sub
マクロの実行結果は下記の通りです。
<ボタン表示>

<はいを選択した場合>

<いいえを選択した場合>

MsgBoxで使用できるボタン一覧
メッセージボックスに設定できるボタンは下記の通りです。
<ボタン一覧>
定数 | 値 | 内容 |
vbOkOnly | 0 | 「OK」ボタンを表示 |
vbOkCancel | 1 | 「OK」「キャンセル」ボタンを表示 |
vbAbortRetryIgnore | 2 | 「中止」「再試行」「無視」ボタンを表示 |
vbYesNoCancel | 3 | 「はい」「いいえ」「キャンセル」ボタンを表示 |
vbYesNo | 4 | 「はい」「いいえ」ボタンを表示 |
vbRetryCancel | 5 | 「再試行」「キャンセル」ボタンを表示 |
メッセージボックスにはアイコンも表示できます。
表示できるアイコンは下記の通りです。
<アイコン一覧>
定数 | 値 | 内容 |
vbCritical | 16 | 警告メッセージアイコンを表示する |
vbQuestion | 32 | 問い合わせメッセージアイコンを表示する |
vbExclamation | 48 | 注意メッセージアイコンを表示する |
vbInformation | 64 | 情報メッセージアイコンを表示する |
ボタンの戻り値は下記の通りです。
<ボタンの戻り値>
定数 | 値 | 内容 |
vbOK | 1 | 「OK」ボタン |
vbCancel | 2 | 「キャンセル」ボタン |
vbAbort | 3 | 「中止」ボタン |
vbRetry | 4 | 「再試行」ボタン |
vbIgnore | 5 | 「無視」ボタン |
vbYes | 6 | 「はい」ボタン |
vbNo | 7 | 「いいえ」ボタン |
以上がメッセージボックスの使用方法となります。
ここまでご覧いただきありがとうございました。
初心者におすすめの書籍はこちら
VBAに詳しくなりたい方におすすめの書籍はこちら