Excel VBAの MsgBox 関数とは?

 


Excel VBAの MsgBox 関数とは?

 MsgBox 関数は、Excel VBAでメッセージボックス(ポップアップウィンドウ)を表示するための機能です。ユーザーに情報を伝えたり、選択肢を提示したりする際に便利です。以下では、基本的な使い方から応用的なテクニックまでを解説します。

基本的な使い方

MsgBox 関数の基本的な構文は以下の通りです:

MsgBox(prompt, [buttons], [title])
  • prompt:メッセージとして表示する文字列。
  • buttons(省略可能):表示するボタンの種類。省略した場合はデフォルトで「OK」ボタンのみ表示されます。
  • title(省略可能):メッセージボックスのタイトル。省略した場合は「Microsoft Excel」が表示されます。

ボタンの種類

buttons パラメータに指定できるボタンの種類は以下の定数があります:

  • vbOKOnly:[OK]ボタンのみを表示
  • vbOKCancel:[OK]ボタンと[キャンセル]ボタンを表示
  • vbAbortRetryIgnore:[中止]、[再試行]、[無視]の3つのボタンを表示
  • その他、vbYesNovbYesNoCancelvbRetryCancelなど

戻り値

ユーザーが選択したコマンドによって、MsgBox の戻り値が変わります。戻り値を利用することで、ユーザーの選択に応じて処理を変更できます。

例えば、以下のコードは「はい」か「いいえ」を選択した場合に異なるメッセージを表示します:

Sub GetUserInput()
    Dim reply As VbMsgBoxResult
    reply = MsgBox("「はい」または「いいえ」を選択してください。", vbYesNo + vbQuestion)
    If reply = vbYes Then
        MsgBox "「はい」が選択されました。"
    Else
        MsgBox "「いいえ」が選択されました。"
    End If
End Sub

その他の応用

  • メッセージボックス内で改行したい場合は vbCrLf を使います。
  • 複数の定数を組み合わせて使うことで、選択肢やアイコンをカスタマイズできます。

これらの基本的な使い方と応用テクニックを活用して、VBAで便利なメッセージボックスを作成しましょう!