Lesson30(メッセージボックス)
今回がレッスン30で最終回です。1999年6月18日開始以来、途中ブランクもありましたが、みなさん
のご支援に支えられて、何とか30回まで続けることができました。今回でVBAが完璧ということにはな
らないのですが、基本的なコントロールの使い方は勉強できたと思います。
さて、最終回ということで、レッスン1で用いたMsgBoxを再び復習することにします。復習と言っても、よ
り深く勉強しようというものです。このMsgBoxはGUI時代のユーザインターフェースの重要な鍵を握って
います。つまりこのMsgBoxを用いて、ユーザと対話することができるんです。いわゆるダイアログ(対話)
ボックスを作ることができます。
MsgBoxの使い方はとにかく簡単でした。フォームのコマンドボタンを押してメッセージを出すだけなら、
Private Sub CommandButton1_Click()
MsgBox "おかえり(^o^)"
End Sub
と、これだけでした。それではこれを対話形式にしてみましょう。学校から帰った子供に、留守をしてるの
でPCのクリックボタンを押すように言ってあるという設定です。
Private Sub CommandButton1_Click()
MsgBox "おかえり(^o^) お腹空いてる?", vbQuestion + vbYesNo
End Sub
, vbQuestion でメッセージの前に?マークのアイコンを付け、+ vbYesNoで[はい(Y)]、[いいえ(N)]のボ
タンを表示します。試しに実行してみてください。 ここで[はい(Y)]や[いいえ(N)]ボタンをクリックしても何
も起きませんよね。それでは。はい、いいえ、に応じたメッセージを書いてみましょう。
Private Sub CommandButton1_Click()
Dim mv
mv = MsgBox ("おかえり(^o^) お腹空いてる?", vbQuestion + vbYesNo)
If mv = vbYes then
MsgBox "レンジにアップルパイがあるからね(^o^)", vbInformation
Else
MsgBox "6時に帰って来るから晩ご飯まで待っててね(^o^)", vbExclamation
End If
End Sub
最初のMsgBoxの使い方が変わりましたね。mvの値を取得するため、関数として使われています。そし
てmvの値が"vbYes"なら「レンジ~」のメッセージを表示し、それ以外は「6時に~」のメッセージを表示
するプログラムになっています。
それでは実行してみましょう。どうですか?すごく簡単な対話形式のプログラムを体感してください。
MsgBoxで使えるアイコンやボタンについては、ヘルプからMsgBox関数を探していろいろ試してみてくだ
さい。
クリックすると↓
[はい]はこちら↓ [いいえ]はこちら↓
![]()
プログラムは講座を受けたからといってすぐに出来るものではありません。いろいろとみなさんでプログ
ラムを作っていって実力を蓄えて行かないと、なかなか使える様にはなりません。とにかく、Office製品を
使っていて、繰り返し作業があるときや、他の人にも同様にやって欲しい仕事があるときは、まずは「マク
ロの記録」を実行し、VBEを起動してみましょう。そこが糸口になります。
![]()
ご意見・ご感想は