アプリ版:「スタンプのみでお礼する」機能のリリースについて

AccessVBAの初心者です。
チェックボックスについての質問です。

掻い摘んで説明しますので判り辛いかもしれませんが、今構築しているデータベースの中のひとつに、チェックボックスのチェックが外れたときにメッセージボックスが出るようなvbOKCancelの組み込み関数を用いたプログラムを作っています。

そのキャンセルを選択した時に、クリックする前の状態に戻すようなプログラムが組みたいのですが、上手くできません。
要するに、チェックがついているままで、チェックボタンをクリックした事実も何事もなかったような状態まで戻したいです^^;
現在はPrivate Subで始まるプログラムなのでExit Sub でプロシージャから抜け出す前の状態に戻せないかと検討していました。
的外れな検討かどうかも含め、アドバイスをお願いいたします。

A 回答 (2件)

そのチェックボックスの更新前イベントで、



Dim lngAns As Long

If Me!チェックボックスコントロール名 = False Then
  lngAns = MsgBox("確認メッセージ", vbOKCancel)
  If lngAns = vbCancel Then
    Cancel = True
  End If
End If


だと、どうでしょうか?
    • good
    • 0
この回答へのお礼

早い解答で感謝しています☆
Dim mchk As Integer
If Me.生産中止.Value = False Then
mchk = MsgBox("生産中止を解除しますか?", vbOKCancel)
If mchk = vbCancel Then
Me.生産中止.Value = True
End If
End If
私がやりたかったことがお二人の答えを合わせてることでできました!!
これからOKだった場合のアクションプログラムをじっくり考えてみたいと思います☆
またわからなくなったらアドバイスをお願いします♪

お礼日時:2007/04/07 13:22

Exitで処理を抜ける前にチェックボックスの値を戻す処理をしないといけないですね。


なので
If Me.チェック0.Value = False Then
Me.チェック0.Value = True
Exit Sub
End If

にすればいけます。
    • good
    • 0
この回答へのお礼

早い解答で感謝しています☆
Dim mchk As Integer
If Me.生産中止.Value = False Then
mchk = MsgBox("生産中止を解除しますか?", vbOKCancel)
If mchk = vbCancel Then
Me.生産中止.Value = True
End If
End If
私がやりたかったことがお二人の答えを合わせてることでできました!!
これからOKだった場合のアクションプログラムをじっくり考えてみたいと思います☆
またわからなくなったらアドバイスをお願いします♪

お礼日時:2007/04/07 13:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!