Bonjour,
J'essais d'activer une case cocher si une zone de texte contient du texte... Quelqu'un saurait m'aider
Merci beaucoup
Bonjour,
J'essais d'activer une case cocher si une zone de texte contient du texte... Quelqu'un saurait m'aider
Merci beaucoup
Bonjour sim911
Cela doit être possible sur l'évènement Change de la zone de texte.
Voici un petit test avec une zone de texte nommée txtTest et une case à cocher nommée chkTest.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub txtTest_Change() If Me.txtTest.Text = "" Or IsNull(Me.txtTest.Text) Then Me.chkTest.Value = False Else Me.chkTest.Value = True End If End Sub
Cela doit être possible sur l'évènement Change de la zone de texteCela ne fonctionne que lorsque je modifie le contenu de la zone de texte... Lorsque je change d'enregistrement ou tout simplement ouvre mon formulaire et que cette zone de texte n'est pas vide, cela n'active pas mon contrôle (checkbox). Existe-t-il un évènement directement sur la form? J'ai fait quelques tests d'évènements mais je n'y arrive toujours pas.
Re
Tu peux mettre une valeur par défaut pour ce contrôle.
Dans les propriétés de ta Chekbox, tu as Valeur par Défaut, il suffit de mettre Faux, ainsi par défaut ta case sera décochée, si tu saisies quelque chose dans ta Textbox, tu la cocheras, si tu ne saisis rien elle sera toujours décochée.
Tu n'as donc pas à faire un test sur un évènement.
En fait, ce que je souhaite faire, c'est qu'à l'ouverture du formlaire (et aussi à chaque fois que je change d'enregistrement, si ma zone de texte contient du texte, qu'une case cocher soit activé (et non pas cocher, l'utilisateur pourra si désiré, la cocher par la suite, mais s'il n'y a pas de texte dans la zone, il ne pourra pas cliqué sur la case, puisque la zone sera vide).
J'ai essayer sous l'évènement load du formulaire ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Form_Load() If Me.text_NomClient.Text = "" Or IsNull(Me.text_NomClient.Text) Then Me.chk_RéservationConfirmée.Enabled = False Else Me.chk_RéservationConfirmée.Enabled = True End If End Sub
Et lorsque j'ouvre mon formulaire, un erreur apparait :
Erreur d'exécution '2185':
Impossible de faire référence à une propriété ou de la définir pour un contrôle si ce dernier n'est pas activé.
Je sais pas si comme ça je suis plus clair?
Re
Dans ce cas remplacepar
Code : Sélectionner tout - Visualiser dans une fenêtre à part text_NomClient.Textde même pour le deuxième.
Code : Sélectionner tout - Visualiser dans une fenêtre à part text_NomClient.Value
Bonjour,
Je pense que tu aurais pu utiliser l'évènement Sur activation :
A+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Form_Current() If isnull(Me.text_NomClient) or Len(Me.text_NomClient) = 0 Then Me.chk_RéservationConfirmée.Enabled = False Else Me.chk_RéservationConfirmée.Enabled = True End If End Sub
Gabout
Merci
Oui ça fonctionne du moins à l'ouverture du formulaire... mais lorsque je change d'enregistrement, et que par exemple dans l'enregistrement suivant il y a du texte dans cette zone, la case n'est pas activé?
On pourrait m'éclairer? Je suis débutant avec Access... J'ignore qu'est-ce que la différence entre .Text et .Value![]()
Re,
Autant pour moi, essaie plutôt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Form_Current() If isnull(Me.text_NomClient) or Len(Me.text_NomClient) = 0 Then Me.chk_RéservationConfirmée = False Else Me.chk_RéservationConfirmée = True End If End Sub
Gabout
Salut Gabout...
Tu avais raison ça fonctionne très bien sur l'évènement activation.
Je comprends pas pourquoi ton code ne fonctionne pas... mais celui-ci fonctionne très bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Form_Current() If Me.text_NomClient.Value = "" Or IsNull(Me.text_NomClient.Value) Then Me.chk_RéservationConfirmée.Enabled = False Else Me.chk_RéservationConfirmée.Enabled = True End If End SubPour l'utilisation futur; est-ce que quelqu'un sait la différence entre .Value et .Text ???
Merci!![]()
Rebonjour à tous,
Lol... J'essais maintenant de faire la même chose avec deux zones de texte... Je veux que lorsque les deux zones de texte sont vide, que ma case coché soit activée.
J'ai essayé cette structure conditionnelle, mais ça ne fonctionne pas.C'est seulement lorsque l'une des deux est vide que ça fonctionne...
Merci à tous encore.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Form_Current() If ((Me.text_Date.Value = "" Or IsNull(Me.text_Date.Value)) And (Me.text_NomClient.Value = "" Or IsNull(Me.text_NomClient.Value))) Then Me.chk_RéservationConfirmée.Enabled = False Else Me.chk_RéservationConfirmée.Enabled = True End If End Sub
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager