Microsoft Access Club >VBA物語 >このページ >次頁 < 前項  サイト内検索


VBA記述の際の留意点-2:VBA物語23



処理の確認を行っていくのはシステム作りの完成度を高めます。今から、「Bフォームを開いてもいいですか?」という条件をユーザーに与えて、「はい」という返事を得てからBフォームを開くように変更しましょう。

今現在、マクロからVBAに変換したサンプルプロシージャを下記のように変更しております。

条件分岐の構文で代表的なものは、If...Then...Else ステートメントです。このステートメントは使用頻度が非常に高いので確実にマスターしましょう。このステートメントの詳細は、後でまた取り上げます。

If A=True Then
   B
Else
   C
End If

このステートメントの意味は、「Aが正しいならB処理をします。Aが正しくないならC処理をします。」ということです。
上記の太い黒字の部分は定型文です。決まりきったものですから覚えましょう。

次に、ユーザーからの応答を受け取るのは、Msgbox関数 を用いて行います。この関数も使用頻度が高いですから要注意です。この関数の詳細も後で取り上げます。

MsgBox("Bフォームを開きますか?", vbYesNo)

""内は自由に書き込みできます。vbYesNoは定数と呼ばれるものです。この関数を実行させると、下記のようなダイアログが表示されます。ユーザーが「はい」をクリックすると、戻り値「vbYes」がプロシージャ内に帰ってきます。逆に「いいえ」をクリックすると「vbNo」が返ります。

次に、この「戻り値」を受け取る処理が必要です。下記のように記述します。これも定型です。

この意味するところは、

  • MsgBox関数の戻り値が「vbYes」であれば、DoCmdコマンドを実行します。 逆に、「vbYes」以外であれば、IFステートメント処理を中止(Exit Sub)します。

ということです。最終的には、下記のような記述になります。

関連ページ

2003/02/01

ページの先頭へ 前ページへ戻る


VBA記述の際の留意点-2:VBA物語23


 

-Microsoft Access Club-