訪問して頂きありがとうございます。まさふくろーです。
この記事では、メッセージボックスの種類と使用例をご紹介します。
メッセージボックスを表示する関数
MsgBox関数
MsgBox ( prompt [, buttons ] [, title ] [, helpfile ] [, context ] )
説明 |
ユーザー独自のメッセージを表示したダイアログボックスを表示するには、MsgBox関数を使用します。 |
必要に応じてボタンを配置し、ボタンごとに処理を分けたり、アイコンを表示したりすることができます。 |
指定項目 | 必須 | 説明 |
prompt |
〇 |
メッセージとして表示する文字列を指定します。 |
半角で1,024文字まで指定可能です。 | ||
vbCrLfを使用することでメッセージを改行することもできます。 | ||
buttons |
ー |
表示されるボタンの種類と個数、使用するアイコンのスタイル、標準ボタンなどを指定します。 |
複数指定することも可能です。 | ||
省略すると「0」(既定値)になります。 | ||
title |
ー |
タイトルバーに表示する文字列を指定します。 |
省略すると、アプリケーション名が表示されます。 | ||
helpfile |
ー |
ダイアログボックスに状況依存のヘルプを設定するために、使用するヘルプファイルを指定します。 |
引数helpfileを指定した場合は、引数contextも指定します。 | ||
context |
ー |
ヘルプトピックに指定したコンテキスト番号を表す数式を指定します。 |
引数contextを指定した場合は、引数helpfileも指定します。 |
ボタンの種類 | ||
定数 | 値 | 内容 |
vbOKOnly(既定値) | 0 | 「OK」ボタンのみを表示します。 |
vbOKCancel | 1 | 「OK」「キャンセル」ボタンを表示します。 |
vbAbortRetryIgnore | 2 | 「中止」「再試行」「無視」の3つのボタンを表示します。 |
vbYesNoCancel | 3 | 「はい」「いいえ」「キャンセル」の3つのボタンを表示します。 |
vbYesNo | 4 | 「はい」「いいえ」のボタンを表示します。 |
vbRetryCancel | 5 | 「再試行」「キャンセル」ボタンを表示します。 |
アイコンの種類 | ||
定数 | 値 | 内容 |
vbCritical | 16 | 警告アイコンを表示します。 |
vbQuestion | 32 | 問い合わせアイコンを表示します。 |
vbExclamation | 48 | 注意アイコンを表示します。 |
vbInformation | 64 | 情報メッセージアイコンを表示します。 |
標準ボタンの設定 | ||
定数 | 値 | 内容 |
vbDefaultButton1(既定値) | 0 | 第1ボタンを標準ボタンにします。 |
vbDefaultButton2 | 256 | 第2ボタンを標準ボタンにします。 |
vbDefaultButton3 | 512 | 第3ボタンを標準ボタンにします。 |
vbDefaultButton4 | 768 | 第4ボタンを標準ボタンにします。 |
モーダルの設定 | ||
定数 | 値 | 内容 |
vbApplicationModal(既定値) |
0 |
アプリケーションモーダルに設定します。 |
メッセージボックスに応答するまで、Accessの操作ができません。 | ||
vbSystemModal |
4096 |
システムモーダルに設定します。 |
メッセージボックスに応答するまで、すべてのアプリケーションの操作ができません。 |
その他 | ||
定数 | 値 | 内容 |
vbMsgBoxHelpButton | 16384 | ヘルプボタンを追加します。 |
vbMsgBoxSetForeground | 65536 | 最前面のウィンドウとして表示します。 |
vbMsgBoxRight | 524288 | テキストを右寄せで表示します。 |
MsgBox関数の戻り値
定数 | 値 | 説明 |
vbOK | 1 | 「OK」ボタン押下時 |
vbCancel | 2 | 「キャンセル」ボタン押下時 |
vbAbort | 3 | 「中止」ボタン押下時 |
vbRetry | 4 | 「再試行」ボタン押下時 |
vbIgnore | 5 | 「無視」ボタン押下時 |
vbYes | 6 | 「はい」ボタン押下時 |
vbNo | 7 | 「いいえ」ボタン押下時 |
サンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Private Sub Sample() Dim ret As String ret = MsgBox("処理を続けますか?", vbYesNo + vbInformation) If ret = vbYes Then MsgBox "処理を継続します。" Else MsgBox "処理を終了します。" End If End Sub |
1 | Subプロシージャ「Sample」を作成。 |
3 | MsgBox関数の戻り値用変数「ret」(文字列型)を宣言。 |
5 | メッセージを表示し、クリックされたボタンの戻り値を変数「ret」に代入。 |
7 | クリックされたボタンが「はい」の場合、 |
8 | 「処理を継続します。」のメッセージを表示します。 |
9 | クリックされたボタンが「いいえ」の場合、 |
10 | 「処理を終了します。」のメッセージを表示します。 |
実行結果
「はい」をクリックした場合
「いいえ」をクリックした場合
最後まで読んでいただき、ありがとうございました!
本のまとめ関連記事はこちら