Question

J'ai une base de données Access avec plusieurs champs qui sont des cases à cocher qui correspondent à d'autres domaines comme un NUMÉRO et de la date.Je veux que ces champs sont grisés lorsque la case correspondante n'est pas activée et à s'ouvrir lorsqu'il est sélectionné.

Check box: Study

Field 1: StudyID

Fields 2: StudyDate

Les 2 champs ont été désactivés par défaut.J'utilise le code suivant pour AfterUpdate sur la case à cocher:

If Me.Study Then
    StudyID.Enabled = True
    StudyDate.Enabled = True
Else
    StudyID.Enabled = False
    StudyDate.Enabled = False
End If

De ce fait, il genre de travail.Il fonctionne sur l'action lorsque vous cliquez sur, mais il n'a pas d'enregistrer les modifications lorsque vous changez de dossiers ou de fermer/rouvrir le formulaire.Est-ce le bon code, ou est-il quelque chose de mieux, ou est-ce que chaque enregistrement doivent être liés individuellement?

Était-ce utile?

La solution

Ce qu'il vous manque, c'est que le code doit s'exécuter de nouveau "Actuel".De cette manière, chaque fois que vous changez de retour à la forme, il va chercher à voir si la case est cochée, et d'activer/de désactiver les champs correctement.

Sélectionnez le formulaire (cliquez sur le petit carré en haut à gauche, où les dirigeants se croisent), puis sur l'Événement de l'onglet propriétés, cliquez sur "Actuelles".Charger ce code:

If Me.Study = -1 Then
    StudyID.Enabled = True
    studydate.Enabled = True
Else
    StudyID.Enabled = False
    studydate.Enabled = False
End If
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top