<スポンサーリンク>
よく使うけど忘れる。。msgboxの使い方をまとめました。
【VBA】質問付きmsgbox、コピペで簡単。
質問、分岐付きのmsgboxのコード一覧です。
※ダブルクリックでコピーできます。
Sub msgbox1()
Dim flag As Integer
' vbOKOnly 0 [OK]ボタンのみを表示します
MsgBox ("AA")
'vbOKCancel 1 [OK]ボタンと[キャンセル]ボタンを表示します
flag = 0
flag = MsgBox("OK" & vbCrLf & "キャンセル?", 1 + 32) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 1 Then
MsgBox "OK"
ElseIf flag = 2 Then
MsgBox "キャンセル"
End If
'vbAbortRetryIgnore 2 [中止]、[再試行]、および[無視]の3つのボタンを表示します
flag = 0
flag = MsgBox("中止" & vbCrLf & "再試行" & vbCrLf & "無視", 2 + 32) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 3 Then
MsgBox "中止"
ElseIf flag = 4 Then
MsgBox "再試行"
ElseIf flag = 5 Then
MsgBox "無視"
End If
'vbYesNoCancel 3 [はい]、[いいえ]、および[キャンセル]の3つのボタンを表示します
flag = 0
flag = MsgBox("はい" & vbCrLf & "いいえ" & vbCrLf & "キャンセル", 3 + 32) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 6 Then
MsgBox "はい"
ElseIf flag = 7 Then
MsgBox "いいえ"
ElseIf flag = 2 Then
MsgBox "キャンセル"
End If
'vbYesNo 4 [はい]ボタンと[いいえ]ボタンを表示します
flag = 0
flag = MsgBox("はい" & vbCrLf & "いいえ", 4 + 64) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 6 Then
MsgBox "はい"
ElseIf flag = 7 Then
MsgBox "いいえ"
End If
'vbRetryCancel 5 [再試行]ボタンと[キャンセル]ボタンを表示します
flag = 0
flag = MsgBox("再試行" & vbCrLf & "キャンセル", 5 + 48) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 4 Then
MsgBox "再試行"
ElseIf flag = 2 Then
MsgBox "キャンセル"
End If
'番外編 INPUTボックス
MOJI = InputBox("質問はここ", "タイトルはここ", "デフォルトの数字はここ")
End Sub
プログラム説明
msgboxには、色々な種類があり、判断に迷いますが、
①ただのメッセージ
②2択の質問
③3択の質問
に分けられます。
また、ここで厄介なのが、
質問が2択であれば、返り値は1,2でいいのに、それぞれの値を持っています。
これに限っては、コピペに限ります。
是非下のコードをお使いください。
2択のメッセージ
'vbOKCancel 1 [OK]ボタンと[キャンセル]ボタンを表示します
flag = 0
flag = MsgBox("OK" & vbCrLf & "キャンセル?", 1 + 32) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 1 Then
MsgBox "OK"
ElseIf flag = 2 Then
MsgBox "キャンセル"
End If
'vbYesNo 4 [はい]ボタンと[いいえ]ボタンを表示します
flag = 0
flag = MsgBox("はい" & vbCrLf & "いいえ", 4 + 64) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 6 Then
MsgBox "はい"
ElseIf flag = 7 Then
MsgBox "いいえ"
End If
'vbRetryCancel 5 [再試行]ボタンと[キャンセル]ボタンを表示します
flag = 0
flag = MsgBox("再試行" & vbCrLf & "キャンセル", 5 + 48) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 4 Then
MsgBox "再試行"
ElseIf flag = 2 Then
MsgBox "キャンセル"
End If
3択のメッセージ
'vbAbortRetryIgnore 2 [中止]、[再試行]、および[無視]の3つのボタンを表示します
flag = 0
flag = MsgBox("中止" & vbCrLf & "再試行" & vbCrLf & "無視", 2 + 32) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 3 Then
MsgBox "中止"
ElseIf flag = 4 Then
MsgBox "再試行"
ElseIf flag = 5 Then
MsgBox "無視"
End If
'vbYesNoCancel 3 [はい]、[いいえ]、および[キャンセル]の3つのボタンを表示します
flag = 0
flag = MsgBox("はい" & vbCrLf & "いいえ" & vbCrLf & "キャンセル", 3 + 32) '16:警告 32:問い合わせ 48:注意 64:情報
If flag = 6 Then
MsgBox "はい"
ElseIf flag = 7 Then
MsgBox "いいえ"
ElseIf flag = 2 Then
MsgBox "キャンセル"
End If
ただのメッセージ
' vbOKOnly 0 [OK]ボタンのみを表示します
MsgBox ("AA")
'番外編 INPUTボックス
MOJI = InputBox("質問はここ", "タイトルはここ", "デフォルトの数字はここ")
コメント欄