こんにちは、ユーキです。
今回は、VBAのメッセージボックスのボタンの変更の仕方を紹介します。
目次
メッセージボックスのボタンを変更する
メッセージボックスのボタンとは
何もしていない場合、メッセージボックスのボタンはOKのみです。
表示できるボタンの種類
表示できるボタンの組み合わせは、以下の6種類になります。
種類 | 定数 |
OKボタンのみ | vbOKOnly |
OKボタン、キャンセルボタン | vbOKCancel |
中止ボタン、再試行ボタン、無視ボタン | vbAbortRetryIgnore |
はいボタン、いいえボタン、キャンセルボタン | vbYesNoCancel |
はいボタン、いいえボタン | vbYesNo |
再試行ボタン、キャンセルボタン | vbRetryCancel |
出力されるダイアログは以下のようになります。
アイコンの指定と一緒に使うには?
メッセージボックスのアイコンを変更する で、説明をしました。そちらを参照ください。
端的いうと、足し算で指定をすればOKです。
【Excel VBA】メッセージボックスのアイコンを変更する
MsbBpx関数で表示されるメッセージのアイコンを変更する方法を紹介しています。
ボタンの初期選択ボタンを変更したい
メッセージボックスを表示した際に、デフォルトで設定しておきたいボタンを変更することが可能です。
vbDefaultButton1~vbDefaultButton3を足し算で指定します。
'3番目のボタンはないので、無効。エラーにはならない。
MsgBox "こんにちは!", vbOKCancel + vbDefaultButton3
'2番目のボタンが選択状態で表示されます。
MsgBox "こんにちは!", vbAbortRetryIgnore + vbDefaultButton2
値が重複することはない?
ボタン指定と、アイコンの指定、ボタンの選択指定とすべて足し算で指定をします。足した結果が重複して正しい指定にならないのでは?と思われる方がいらっしゃるかもしれません。
ボタン指定、アイコンの指定、ボタンの選択指定はすべてどのように足しても重複しないように計算された値になっています。そのため、ボタン指定を2回指定する、アイコン指定を2回指定するというようなことをしない限りは、一意の値となります。
まとめ
今回は、メッセージボックスのボタンの変更の仕方について述べました。
メッセージボックスのボタン変更
- MsgBoxの第2引数を指定する
- ボタンの表示パターンは6種類
- アイコン指定、ボタン選択指定と併用する際は足し算で指定する
少しでもお役に立てば、幸いです。