Champ visible sur condition sans avoir besoin d'actualiser

Fermé
llmdb - 2 juin 2023 à 13:21
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 - 2 juin 2023 à 17:07

Bonjour,

je suis novice sur access et je demande le secours des spécialistes !

Je crée une base de données de recensement d'experts. Dans un formulaire, j'ai deux champs : un champ "nombre d'experts" et 2 champs thématique : "thématique de l'expert 1" et "thématique de l'expert 2". Je souhaite faire apparaître le champ "thématique de l'expert 1" quand le champ "nombre d'experts" est =1 et les champs "thématique de l'expert 1" et "thématique de l'expert 2" quand le champ "nombre d'experts" est =2. Je souhaite que les champs apparaissent dès que je renseigne le nombre d'experts. J'ai écrit le code suivant :


If [nombre d'experts] >= 2 Then
[thématique de l'expert 2].Visible = True
Else
[thématique de l'expert 2].Visible = False
End If

If [nombre d'experts] >= 1 Then
[thématique de l'expert 1].Visible = True
Else
[thématique de l'expert 1].Visible = False
 

J'ai écris ce code dans la propriété current ("sur activation" en français), et après je l'avais mis initialement dans la propriété "au clic" mais quand je remplis ma case "nombre d'experts", je dois actualiser mon formulaire pour que les cases thématiques correspondantes apparaissent. J'ai essayé de mettre le code dans la propriété "avant Maj" mais ça ne fonctionnait pas non plus ... 


Comment faire ? Y-a-t-il un moyen de programmer une actualisation automatique par exemple ?

Je vous remercie pour votre aide précieuse

Lena


Windows / Chrome 113.0.0.0

A voir également:

1 réponse

yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 Ambassadeur 1 554
2 juin 2023 à 17:07

bonjour,

peut-être ainsi:

Option Compare Database
Option Explicit

Private Sub nb_Change()
If IsNumeric(Me.nb.text) Then
    If Me.nb.text > 0 Then
        Me.them.Visible = True
    Else
        Me.them.Visible = False
    End If
End If
End Sub

J'ai testé avec des textbox nommées nb et them.

0