MsgBox

簡単なメッセージ表示であれば、わざわざUserFormを作らなくてもメッセージボックス(MsgBox)が便利です。

  1. ) MsgBox関数の書式:
      MsgBox(prompt[, buttons] [, title] [, helpfile, context]) As Integer
    パラメータの意味:
    パラメータデータ型説明
    promptStringダイアログ ボックス内に表示する文字列式を指定。注1
    buttonsLong表示されるボタンの種類と個数、アイコンなどを表す値の合計値を指定
    titleStringダイアログ ボックスのタイトル バーに表示する文字列を指定
    helpfileStringヘルプファイルを指定。通常エラー変数のErr.HelpFileを指定
    contextLongヘルプ トピックに指定したコンテキスト番号を指定。通常エラー変数のErr.HelpContextを指定
    注1:表示できる最大文字数は、1 バイト文字で約 1,024 文字です。複数行で表示したい場合は、Chr(13)(=CR)、Chr(10)(=LF)または(Chr(13) & Chr(10) (=CR &LF) で改行してください。
     
  2. ) Buttonの定数 以下で値が0のものがデフォルトです。つまり設定しなければ、 [OK] ボタンのみを表示し、第 1 ボタンがデフォルト(ボタンが1つだけですが)、アイコンなし、アプリケーション モーダルとなります。
    定数内容
    ボタンの種類の定数
    vbOKOnly0[OK] ボタンのみを表示します。
    vbOKCancel1[OK] と [キャンセル] のボタンを表示します。
    vbAbortRetryIgnore2[中止]、[再試行]、および [無視] のボタンを表示します。
    vbYesNoCancel3[はい]、[いいえ]、および [キャンセル] のボタンを表示します。
    vbYesNo4[はい] と [いいえ] のボタンを表示します。
    vbRetryCancel5[再試行] と [キャンセル] のボタンを表示します。
    vbMsgBoxHelpButton16384ヘルプ ボタンを追加します。
    アイコンの種類の定数注2
    0アイコンを表示しません。
    vbCritical16警告メッセージ アイコンを表示します。
    vbQuestion32問い合わせメッセージ アイコンを表示します。
    vbExclamation48注意メッセージ アイコンを表示します。
    vbInformation64情報メッセージ アイコンを表示します。
    ボタンのデフォルト定数表示された時にカーソルのあるボタン位置。注3
    vbDefaultButton10第 1 ボタンをデフォルトとします。
    vbDefaultButton2256第 2 ボタンをデフォルトとします。
    vbDefaultButton3512第 3 ボタンをデフォルトとします。
    vbDefaultButton4768第 4 ボタンをデフォルトとします。
    その他の定数
    vbApplicationModal0アプリケーション モーダルにし、Excelの操作をできなようにします。
    vbSystemModal4096システム モーダルし、すべてのアプリケーションが操作できないようにします。
    VbMsgBoxSetForeground65536最前面のウィンドウとして表示します。
    vbMsgBoxRight524288テキストを右寄せで表示します。
    vbMsgBoxRtlReading1048576テキストを、右から左の方向で表示します。
    注2:複数設定された場合は合計値のアイコンが表示され、合計値が一致しない場合は、アイコンが表示されません。
    注3:複数設定された場合は合計値のボタンが表示され、合計値が一致しない場合は、第 1 ボタンがデフォルトになります。
  3. ) アイコンの例
    定数をダイアログ ボックスのタイトルに表示しています。
     
    excel/ExcelMsgBox.jpg
  4. ) 戻り値
    定数説明
    vbOK1OK
    vbCancel2キャンセル
    vbAbort3中止
    vbRetry4再試行
    vbIgnore5無視
    vbYes6はい
    vbNo7いいえ
  5. ) 使用例
    エラー処理での使用例 → example304
     
    次のサンプルはOKとキャンセルのボタンを表示しその結果で処理を分けます。
    Public Sub example1801()
        Dim result      As Integer
    
        result = MsgBox("終了しますか?", _
            vbQuestion + vbOKCancel + vbApplicationModal + vbDefaultButton1, _
                        "終了確認")
        If result = vbOK Then
             End
        ElseIf result = vbCancel Then
           'NOP
        End If
    
    End Sub
    

最終更新のRSS
Last-modified: 2014-03-11 (火) 01:58:42 (3921d)