- Home ›
- Excel VBA入門 ›
- ダイアログ
アイコンの表示
広告
ダイアログにはどんな種類かを表すアイコンを指定することができます。
アイコンについても既にVBAで定義されています。
| 定義済み定数 | 実際の値 | 説明 |
|---|---|---|
| vbCritical | 16 | 警告 |
| vbQuestion | 32 | 問い合わせ |
| vbExclamation | 48 | 注意 |
| vbInfomation | 64 | 情報 |
前のページで確認したどの種類のボタンが表示するかを示す定数と加算して「MsgBox」関数を呼び出す時の2番目の引数に指定します。
例えば「vbOKCancel」ボタンと「vbQuestion」アイコンを使ったダイアログを表示した場合次のようになります。
Sub テスト()
Dim ans As Integer
ans = MsgBox("実行しますか?", vbOKCancel + vbQuestion, "テスト")
If ans = vbOK Then
Range("A1").Value = "OKが押されました"
Else
Range("A1").Value = "キャンセルが押されました"
End If
End Sub
「vbOKCancel」の実際の値は「1」で「vbQuestion」の実際の値は「32」ですので、合計して「33」という値が指定されたことになります。どの組み合わせであっても識別できるように各定数の値は設定されています。
では一通り試してみましょう。
vbCritical
Sub テスト()
Dim ans As Integer
ans = MsgBox("危険です。すぐにウィルス駆除をして下さい。" _
, vbOKCancel + vbCritical, "テスト")
If ans = vbOK Then
Range("A1").Value = "OKが押されました"
Else
Range("A1").Value = "キャンセルが押されました"
End If
End Sub
上記のマクロを実行すると次のようになります。
他のアイコンは画面表示だけ見てください。
vbQuestion
Dim ans As Integer
ans = MsgBox("インストールを継続しますか?" _
, vbAbortRetryIgnore + vbQuestion, "テスト")
vbExclamation
Dim ans As Integer
ans = MsgBox("削除すると元に戻せません。続行しますか?" _
, vbYesNo + vbExclamation, "テスト")
vbInformation
MsgBox "インストールは完了しました", _
vbOKOnly + vbInformation, "テスト"
( Written by Tatsuo Ikura )
Profile
著者 / TATSUO IKURA
初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。