MsgBox 関数
ダイアログ ボックスにメッセージを表示し、ユーザーがボタンをクリックするのを待機し、ユーザーがどのボタンをクリックしたかを示す整数を返します。
注:
複数のプラットフォーム間で Office エクスペリエンスを拡張するソリューションを開発することに関心がありますか? 新しい Office アドイン モデルを参照してください。 Office アドインは、VSTO アドインやソリューションに比べてフットプリントが小さく、HTML5、JavaScript、CSS3、XML などのほぼすべてのWeb プログラミング テクノロジーを使用して構築できます。
構文
MsgBox (prompt, [ buttons, ] [ title, ] [ helpfile, context ])
MsgBox 関数の構文には、次の名前付き引数があります。
指定項目 | 説明 |
---|---|
Prompt | 必須です。 ダイアログ ボックスにメッセージとして表示される文字列式です。 使用する文字の幅により、prompt は最大で約 1024 文字使用できます。 prompt が複数の行にまたがる場合、行と行の間にキャリッジ リターン文字 (Chr(13))、ライン フィード文字 (Chr(10))、またはキャリッジ リターン文字とライン フィード文字の組み合わせ (Chr(13) & Chr(10)) を使用して行を分けることができます。 |
buttons | 省略可能。 表示させるボタンの数と種類を指定する値、使用するアイコンのスタイル、既定のボタンの ID、およびメッセージ ボックスのモダリティの組み合わせを表す数値式です。 省略された場合、buttons の既定値は 0 です。 |
title | 省略可能。 ダイアログ ボックスのタイトル バーに表示される文字列式です。 title が省略された場合、タイトル バーにはアプリケーションの名前が表示されます。 |
helpfile | 省略可能。 ダイアログ ボックスに状況依存のヘルプを提供するときに使用するヘルプ ファイルを識別する文字列式です。 helpfile を指定する場合は、context も必ず指定する必要があります。 |
context | 省略可能。 ヘルプ作成者によって適切なヘルプ トピックに割り当てられたヘルプ コンテキスト番号を示す数式です。 context を指定する場合は、helpfile も必ず指定する必要があります。 |
設定
buttons引数の設定は次のとおりです。
定数 | 値 | 説明 |
---|---|---|
vbOKOnly | 0 | [OK] ボタンのみを表示します。 |
vbOKCancel | 1 | [OK] ボタンと [キャンセル] ボタンを表示します。 |
vbAbortRetryIgnore | 2 | [中止]、[再試行]、[無視] の各ボタンを表示します。 |
vbYesNoCancel | 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 | アプリケーション モーダル。現在のアプリケーションでの作業を続行するには、ユーザーはメッセージ ボックスに応答する必要があります。 |
vbSystemModal | 4096 | システム モーダル。ユーザーがメッセージ ボックスに応答するまで、すべてのアプリケーションが中断します。 |
vbMsgBoxHelpButton | 16384 | メッセージ ボックスに [ヘルプ] ボタンを追加します。 |
vbMsgBoxSetForeground | 65536 | [メッセージ ボックス] ウィンドウを前景ウィンドウとして指定します。 |
vbMsgBoxRight | 524288 | テキストを右揃えにします。 |
vbMsgBoxRtlReading | 1048576 | ヘブライ語とアラビア語のシステムでテキストが右から左に読む形式で表示されるように指定します。 |
最初の値のグループ (0-5) はダイアログ ボックスに表示されるボタンの数と種類を示します。2 番目のグループ (16、32、48、64) はアイコンのスタイルを示します。3 番目のグループ (0、256、512) は既定のボタンを決定します。4 番目のグループ (0、4096) は、メッセージ ボックスのモダリティを決定します。 それぞれの値を組み合わせて buttons 引数の最終的な値を作成する際は、各グループから値を 1 つだけ使用します。
注:
これらの定数は、VbMsgBoxStyle 列挙型の Visual Basic for Applications によって指定されます。 そのため、これらの名前は、実際の値の代わりにコードのどの部分でも使用できます。
戻り値
戻り値は VbMsgBoxResult 列挙型で定義されます。
定数 | 値 | 説明 |
---|---|---|
vbOK | 1 | OK |
vbCancel | 2 | Cancel |
vbAbort | 3 | 中止 |
vbRetry | 4 | 再試行 |
vbIgnore | 5 | 無視 |
vbYes | 6 | はい |
vbNo | 7 | いいえ |
解説
helpfile とcontext の両方を指定した場合、ユーザーは F1 キー (Windowsの場合) または HELP キー (Macintosh) を押して context に対応するヘルプ トピックを表示できます。 Microsoft Excel などの一部のホスト アプリケーションでは、ダイアログ ボックスに [ヘルプ] ボタンが自動的に追加されます。
ダイアログ ボックスに [キャンセル] ボタンが表示されている場合、ESC キーを押すと [キャンセル] ボタンをクリックするのと同じ効果があります。 ダイアログ ボックスに [ヘルプ] ボタンが含まれている場合、ダイアログ ボックスで状況依存のヘルプが提供されています。 ただし、他のいずれかのボタンをクリックするまで値は返されません。
例
この例では、 MsgBox 関数を使用して、[はい] ボタンと [いいえ] ボタンが含まれるダイアログ ボックスで重大なエラーのメッセージを表示させます。 [いいえ] ボタンは既定の応答として指定されています。 MsgBox 関数によって返される値は、ユーザーが選択したボタンに依存します。 この例では、DEMO.HLP
は、ヘルプ コンテキスト番号が 1000
のトピックを含むヘルプ ファイルであると仮定されています。
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "Do you want to continue ?" ' Define message.
Style = vbYesNo Or vbCritical Or vbDefaultButton2 ' Define buttons.
Title = "MsgBox Demonstration" ' Define title.
Help = "DEMO.HLP" ' Define Help file.
Ctxt = 1000 ' Define topic context.
' Display message.
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
If Response = vbYes Then ' User chose Yes.
MyString = "Yes" ' Perform some action.
Else ' User chose No.
MyString = "No" ' Perform some action.
End If
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。