- 締切済み
access2000 メッセージボックスについて
access2000のvbaでつまづいています。 フォームを閉じるために設定したvbaです。 以下のように入力し、メッセージボックスで「いいえ」を選んだときは何もさせたくないのですが、「はい」でも「いいえ」でもフォームを閉じてしまいます。「いいえ」のときは何もさせないためにはどこを訂正すればよろしいでしょうか?ご教示ください。 Select Case KeyCode Case vbKeyF9 '閉じる response = MsgBox("フォームを閉じますか?", vbYesNo + vbQuestion + vbDefaultButton1, "メインフォーム") If response <> vbYes Then DoCmd.Close acForm, "メインフォーム", acSavePrompt Else End If .........(以下case構文がいくつか続きます)
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- hatena1989
- ベストアンサー率87% (378/433)
そのコードだと、「はい」を選択した時に何もしなくて、「いいえ」を選択すると閉じるはずですが。 「はい」で閉じて、「いいえ」で何もしないなら、 KeyCode = 0 response = MsgBox("フォームを閉じますか?", vbYesNo + vbQuestion + vbDefaultButton1, "メインフォーム") If response = vbYes Then DoCmd.Close acForm, "メインフォーム", acSavePrompt Else Exit Sub End If です。 これで、「はい」でも「いいえ」でも閉じてしまうなら、 全体をコードを見ないと原因は分からないですね。 例えば、response変数の宣言はどうなっているかとか。
お礼
hatena1989様 こんにちは!お礼が大変遅くなりまして申し訳ございませんでした。 教えていただいた通りvbaを訂正しましたところ、思い通りになりました。大変助かりました、ありがとうございました!