vbQuestion + vbYesNo でクエッションの表示は [はい]と
[いいえ] のボタンが表示される。
MsgBox(prompt, buttons, title) の構文は、その使用状態に
よって、わかりやすく書けばよい。
Sub Msg7( )
MsgBox "間違いですか", vbQuestion + vbYesNo, "チェック"
End Sub
[OK]と[キャンセル]を押すと、それぞれの [戻り値]が
返される。それによって、押されたボタンを判定する
事ができる。
If 警告 = vbCancel Then
これは、押されたボタンによって、次の IF 文を
実行するためのもので、[キャンセル]を押すと
[警告]に 2 が入って、vbCancel は 2 だから
警告=vbCancel が成立する。
[OK]を押すと警告に 1 が入って、vbCancel が
押されていないことがわかる。
Sub Msg6( )
If Range("B4")="2" Then
タイトル = "これは 「機番入力確認」 のためのメッセージです。"
スタイル = vbCritical+vbOKCancel
メッセージ = "機番が正しくありません、" & vbCr & "キャンセルは消去"
警告=MsgBox (メッセージ, スタイル, タイトル)
End If
If 警告=vbCancel Then
celCR="B4"
Range(celCR).ClearContents
End If
End Sub
vbCritical の表示である。
vbOKCancel で [OK]と[キャンセル]が
表示される。
Sub Msg5( )
タイトル = "これは 「機番入力確認」 のためのメッセージです。"
スタイル = vbCritical+vbOKCancel
メッセージ = "機番が正しくありません、" & vbCr & "キャンセルは消去"
MsgBox メッセージ, スタイル, タイトル
End Sub
図のように vbInformation 形式の MsgBox にタイトルとメッセージが表示されて、
[OK] ボタンが装備される。尚、文章の改行は & vbCr と書く。空白行の挿入は、
& vbCr & vbCr & と2回続けて書く。
Sub Msg4( )
If Range("B3") = "0" Then
タイトル = "これは 「機番入力確認」 のためのメッセージです。"
スタイル = vbInformation
メッセージ = "機番が正しくありません、" & vbCr & vbCr & _
"機番入力ボタンが押されていません。 正しくないと次に進みません。 "
MsgBox メッセージ, スタイル, タイトル
Exit Sub
End If
End Sub
B2とC2のどちらにも書かれていると、メッセージが
表示される。
スタイルを指定しないと、[OK]ボタンが表示される。
[OK]ボタンを押しても、指定していないとメッセージが
消えるだけである。
Exit Subでプログラムは終わる。
Sub Msg3( )
If Range("B2")="要" And Range("C2")="不要"
Then
MsgBox "要か不要のどちらかを消してください。"
Exit Sub
End If
End Sub
vbYesNoを使用すると、[はい]、[いいえ]が表示される。
Sub Msg2( )
MsgBox "これでよいか",vbYesNo,"注意"
End Sub
test がメッセージでスタイルが vbInformation 、タイトルが "注意" である。
尚、テキストは [ " ] ダブルクオテーションマークで囲む必要がある。
囲まないと表示されない。
Sub Msg1( )
MsgBox "test",vbInfomation,"注意"
End Sub
5. 最後に "注意" とタイトルを入力する。
4. vbInfomationがあるので選択して、Tabキーを押すと入力される。
3. メッセージボックスの種類選択が表示される。スライダーで下方へ移動すると、
2. 次に "test", のようにメッセージ文とコンマキーを押すと、
●MsgBoxを書く手順
1. MsgBoxと書いてSpaceキーを押すと図のように表示される。
MsgBox関数の構文
MsgBox(prompt,buttons,title)
MsgBox メッセージ,スタイル,タイトル
どちらの書き方でもよい。
メッセージBoxで設定できる定義
基本的なマクロの習得
メッセージBoxの作成
実際に使っているシステムの内容で解説
EXCEL VBA 講座