VBAでメッセージを表示する際に「MsgBox」関数を使用しますが、アイコンの定数を設定することで「警告、注意、問い合わせ、情報」を表示させることができます。
他にも「Yes、Noボタン」を表示させることもできるで、状況に応じてメッセージ表示の使い分けをできるようにしましょう!
梅屋
アイコン設定を理解すればVBAの幅が広がります!
定数について
アイコンとボタンの定数について解説をしていきます!
アイコン
定数 | 説明 |
vbOKOnly | 【OK】ボタンを表示 |
vbOKCancel | 【OK】、【キャンセル】ボタンを表示 |
vbAbortRetryIgnore | 【中止】、【再試行】、【無視】ボタンを表示 |
vbRetryCancel | 【再試行】、【キャンセル】ボタンを表示 |
vbYesNo | 【はい】、【いいえ】ボタンを表示 |
vbYesNoCancel | 【はい】、【いいえ】、【キャンセル】ボタンを表示 |
ボタン
定数 | 説明 |
vbInformation | 【情報メッセージ】アイコンを表示 |
vbQuestion | 【問い合わせメッセージ】アイコンを表示 |
vbExclamation | 【注意メッセージ】アイコンを表示 |
vbCritical | 【警告メッセージ】アイコンを表示 |
サンプル
コピペで使えるサンプルを用意しました。
メッセージの内容を変更して使用してください!
vbOKOnly
1 2 3 4 5 |
Sub Sample1() MsgBox "メッセージを表示します。【OKのみ】", vbOKOnly End Sub |
vbOKCancel
1 2 3 4 5 |
Sub Sample2() MsgBox "メッセージを表示します。【OK】、【キャンセル】", vbOKCancel End Sub |
vbAbortRetryIgnore
1 2 3 4 5 |
Sub Sample3() MsgBox "メッセージを表示します。【中止】、【再試行】、【無視】", vbAbortRetryIgnore End Sub |
vbRetryCancel
1 2 3 4 5 |
Sub Sample4() MsgBox "メッセージを表示します。【再試行】、【キャンセル】", vbRetryCancel End Sub |
vbYesNo
1 2 3 4 5 |
Sub Sample5() MsgBox "メッセージを表示します。【はい】、【いいえ】", vbYesNo End Sub |
vbYesNoCancel
1 2 3 4 5 |
Sub Sample6() MsgBox "メッセージを表示します。【はい】、【いいえ】、【キャンセル】", vbYesNoCancel End Sub |
vbInformation
1 2 3 4 5 |
Sub Sample7() MsgBox "【情報メッセージ】アイコンを表示", vbInformation End Sub |
vbQuestion
1 2 3 4 5 |
Sub Sample8() MsgBox "【問い合わせメッセージ】アイコンを表示", vbQuestion End Sub |
vbExclamation
1 2 3 4 5 |
Sub Sample9() MsgBox "【注意メッセージ】アイコンを表示", vbExclamation End Sub |
vbCritical
1 2 3 4 5 |
Sub Sample10() MsgBox "【警告メッセージ】アイコンを表示", vbCritical End Sub |
応用編
ここからはボタンとアイコンを組み合わせについて解説。
この二つを組み合わせることで、メッセージを読みやすくする効果が期待できるので覚えておきましょう!
vbOKOnly+vbYesNoCancel
1 2 3 4 5 |
Sub Sample11() MsgBox "このまま処理を継続しても良いですか?", vbYesNoCancel + vbQuestion, "動作確認" End Sub |
vbOKCancel+vbExclamation
今回は最初の選択によってルートを分岐させます。
ファイル取り込みで「キャンセル」を選択すると「取り込みエラー」のメッセージが表示されます。
※他の人向けのマクロを作成する時にはここまで用意してあげた方が良いと思います。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Sub Sample12() If MsgBox("読み込むファイルを選択してください。", vbOKCancel + vbExclamation, "ファイル指定") = vbOK Then 'ファイル取り込みの処理を記述する。 Else MsgBox "ファイルを準備してから再度実行してください。", vbOKOnly, "【取り込みエラー】" End If End Sub |
まとめ
今回はMsgBoxの「アイコン+ボタン」設定について解説をしました。
ただメッセージを表示するだけだと、読み飛ばされてしまうケースが多かったですが、アイコンとボタンを組みわせるだけで目に留まりやすくさせることができます。
組み合わせ方を理解してしまえば難しい内容ではありませんので、使えるようにしておきましょう!
タイトルとURLをコピーしました