Tester si un MaskEdit est vide....

Résolu
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008 - 3 mai 2007 à 17:37
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008 - 6 mai 2007 à 19:45
Bonjour à tous, voici mon petit problème autour duquel je patauge depuis quelques heures !

Au fait je travaille sur un projet en VB6 où l'on inscrit des personnes dans une BDD.

Dans ce feuille d'inscription j'utilise des MaskEdit par exemple pour lnuméro de registre national qui dans ma BDD est obligatoire et unique.. donc je voudrais tester s'il est rempli ou pas !

Pour cela j'ai tourné un peu avec la fonction IsNull mais ça n'a pas donné grand chose, je n'utilise surement pas les bonnes commandes !

Y-a-t'il une personne bien aimable qui puisse m'aider merci beaucoup d'avance

CODE ACTUEL :

'Début du test du MaskEdit du Numéro de registre national
If maskedit_inscription(0).Text = "" Then

    MsgBox "Veuillez indiquer le Numéro de registre national s'il vous plaît !", , "Remplir le Numéro de registre national."
    maskedit_inscription(0).SetFocus
    Exit Sub

End If

'Fin du test

J-il

45 réponses

jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
3 mai 2007 à 18:58
Bonjour à tous,

Je ne suis que de passage dans cette discussion.

A la lecture de quelques passages, il me semble que vous n'avez pas vu la propriété Text et la propriété ClipText

La propriété ClipText se moque éperdument du masque. Elle est vide si le contrôle est vide ...et non vide si le contrôle est saisi

donc :

If MaskEdBox1.ClipText = ""

est la bonne expression.

Pour info :

Returns the text in the Masked Edit control, excluding literal characters of the input mask. This property is not available at design time and is read-only at run time.
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
3 mai 2007 à 17:51
Salut,

si tu y places un Masque, la propriété Text du MaskedEditBox te sors ce masque.
Essaie donc comme ceci :

If maskedit_inscription(0).Text = "" Or maskedit_inscription(0).Text = maskedit_inscription(0).Mask Then

   

@++

<hr width="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 17:56
Salut Mortalino,

Je viens d'essayer ton code mais ça ne fonctione toujours pas, mieux encore il ne passe même pas dedans !

Pfff fichu MaskEdit

Merci tout de même J-il
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 17:59
Salut,
IsNull ne fonctionnera pas car MaskEdit n' est jamais Null même s' il est vide
C' est Plutôt IsEmpty() qu' il faut utiliser .
If maskedit_inscription(0).Text = "" Then me semble correct.
Pourquoi vouloir le changer..?
Est-ce que ça marche pas ?

T' as un Format spécifique pour le MaskEdit ?




 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
3 mai 2007 à 18:00
J'ai testé comme ceci et ça fonctionne pourtant :

Private Sub Command1_Click()
If MaskEdBox1.Text = "" Or MaskEdBox1.Text = MaskEdBox1.Mask Then
    MsgBox "vide"
End If

End Sub

Private Sub Form_Load()
    MaskEdBox1.Mask = "___ - ___"
End Sub

@++

<hr width="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 18:01
Salut mortalino..
coiffé au poteau !
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 18:03
Merci à toi chaibat05 comme toujours...
Je pense grâce à une de tes questions avoir trouvé la réponse !

Je ne défini nul part mon format...

Enfin si dans la propriété Mask j'ai ######-#####

Je pense que je dois donc faire comme Mortalino l'indique dans mon form_load faire ceci

maskedit_inscription.mask = "######-#####"

??????

Merci à tous les deux si cela fonctionne...

J-il
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 18:08
rien ne fonctionne je ne comprend pas se problème mdr

Je vais en devenir dingue
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 18:11
Bon...!
Allons y par étape:
Ton MaskEdit est-il lié à un recordset ?
Dans quel événement as tu placé le test ?
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 18:12
Non il n'est pas lié à un RecordSet et mon teste je le fait dans un bouton lors de la validation de l'enregistrement de la personne...
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
3 mai 2007 à 18:14
Salut Chaibat05

En fait, si tu pouvais nous lister TOUTES les modifications que tu as apporté au MaskedEditBox, comme ça cela nous permettra de reproduire comme toi tu le fais !

@++

<hr width="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 18:17
Et bien c'est un maskedit indexé, dans la propriété mask j'ai ######-##### et voila c'est tout ce que j'ai fait comme modification dessus
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 18:19
Alors tu déplaces le test vers MaskEdit_Validate()
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 18:19
Et vers le LostFocus ça va pas ?
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 18:22
discutes pas et fais ce qu' on te dit
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 18:23
OK ok je fais je fais 

Ca ne fonctionne pas non plus mdr

Je fais surement une mauvaise manipulation !

code mis dans la validate

'Début du test du MaskEdit du Numéro de registre national
If maskedit_inscription(0).Text = "" Then

    MsgBox "Veuillez indiquer le Numéro de registre national s'il vous plaît !", , "Remplir le Numéro de registre national."
    maskedit_inscription(0).SetFocus
    Exit Sub

End If
'Fin du test
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
3 mai 2007 à 18:25
Je t'ai dit avec le Msk aussi dans la vérification :
If maskedit_inscription(0).Text "" OR maskedit_inscription(0).Text maskedit_inscription(0).Mask Then

@++

<hr width ="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 18:28
Voila j'ai essayé ce code-ci dans le Validate et dans le LostFocus et dans le bouton ou je valide mon enregistrement :

'Début du test du MaskEdit du Numéro de registre nationalIf maskedit_inscription(0).Text "" Or maskedit_inscription(0).Text maskedit_inscription(0).Mask Then

    MsgBox "Veuillez indiquer le Numéro de registre national s'il vous plaît !", , "Remplir le Numéro de registre national."
    maskedit_inscription(0).SetFocus
    Exit Sub

End If
'Fin du test

Aucun résultat....
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 18:28
Si ton MaskEdit est indexé t' as surement ceci :


Sub MasEdit_Validate(Index As integer,Cancel As Integer)
tu testes alors sur l' index
If Index=0 Then
If maskedit_inscription(Index).Text = "" Then
  
    MsgBox "Veuillez indiquer le Numéro de registre national s'il vous plaît !", , "Remplir le Numéro de registre national."
    maskedit_inscription(Index).SetFocus
    cancel=True
   Exit Sub


End If
End If
'Fin du test
 
0
J_il Messages postés 109 Date d'inscription mardi 27 mars 2007 Statut Membre Dernière intervention 9 septembre 2008
3 mai 2007 à 18:31
Oui j'ai bien cela lorsque je vais dans cette événement je viens de mettre ton code dedans et ça ne fonctionne pas...

je suis vraiement désolé les gars mais bon !!!!

J'en peux rien
0
Rejoignez-nous