プロが教えるわが家の防犯対策術!

こんにちは。
フォームで「個人別状態」が「成約済み」の時に
チェックボックスにチェックがつくようにしたいのですが、
動作しません。
どこが間違っているのでしょうか。。。

Private Sub チェック31_Click()
If Me.個人別状態 = "成約済み" Then
Me.チェック31.Value = False
Else
Me.チェック31.Value = True
End If
End Sub

A 回答 (3件)

チェックボックスの値をテーブルに保存しなくてよいのなら


チェックボックスのコントロールソースを
=[個人別状態] = "成約済み"
でよろしいのでは?
    • good
    • 0
この回答へのお礼

ありがとうございました。
できました!

お礼日時:2007/02/23 18:03

>If Me.個人別状態 = "成約済み" Then


>Me.チェック31.Value = False
>Else
>Me.チェック31.Value = True
>End If

これだとMe.個人別状態に"成約済み"と入力してある場合
チェックをはずすとプログラムされてるのでは?
FalseとTrueが逆な気がします。

実際テストはしていないので間違ってたらごめんなさい
    • good
    • 0

Private Sub Form_Current()


  Me.チェック = CBool(Me.個人別状態 = "成約済み")
End Sub

Private Sub 個人別状態_AfterUpdate()
  Me.チェック = CBool(Me.個人別状態 = "成約済み")
End Sub

Private Sub チェック_Click()
  Me.チェック = CBool(Me.個人別状態 = "成約済み")
End Sub

この3つの内、どれかが必要でどれかが不要です。

Form_Current()・・・・・・・・・・・既存レコードの状況をチェックボックスに反映するのに必要です。
個人別状態_AfterUpdate()・・[個人別状態]の変更をチェックボックスに反映するのに必要です。
チェック_Click()・・・・・・・・・・・・一応、動作しますが、上記の2つがあれば不必要です。
    • good
    • 0

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