チェックボックスを使用してフィールドを有効にします
-
23-12-2019 - |
質問
ID番号や日付などの他のフィールドに対応するチェックボックスであるいくつかのフィールドを持つAccessデータベースがあります。対応するチェックボックスが選択されていない場合はこれらのフィールドをグレー表示にし、選択するとフィールドが開くようにしたいと考えています。
Check box: Study
Field 1: StudyID
Fields 2: StudyDate
2 つのフィールドはデフォルトでは無効になっています。次のコードを使用しています AfterUpdate
チェックボックスで:
If Me.Study Then
StudyID.Enabled = True
StudyDate.Enabled = True
Else
StudyID.Enabled = False
StudyDate.Enabled = False
End If
これは一種の仕事になります。クリックしたときのアクションは機能しますが、レコードを切り替えたり、フォームを閉じたり再度開いたりしたときに変更は保存されません。これは正しいコードですか、それとももっと良いコードがあるのでしょうか、あるいは各レコードを個別にリンクする必要がありますか?
解決
欠けているのは、コードを「現在」で再実行する必要があるということです。そうすれば、フォームに戻るたびに、チェックボックスがチェックされているかどうかが確認され、フィールドが正しく有効/無効になります。
フォームを選択し (定規が交差する左上の小さな四角形をクリックし)、[イベント プロパティ] タブで [現在] をクリックします。このコードをロードします:
If Me.Study = -1 Then
StudyID.Enabled = True
studydate.Enabled = True
Else
StudyID.Enabled = False
studydate.Enabled = False
End If
所属していません StackOverflow