Zone de text vb6

adelani -  
thev Messages postés 2010 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai quelque probleme avec vb6, et je souhaite avoir de l'aide.

1 - dans une zone de text je veux ecrire un nombre par exemple 2,53 lorsque j'import cette valeur dans mon fichier excelje ne trouve que 2 comment faire pour arriver a définir le contenue de la zone text comme un nombre décimale?

2 - tjrs dans une zone txt je veux que l'utilisateur ne peux faire saisire que des chiffre, oas de lettre et pas de caractére spéciaux. en faite j'ai écrire ce code:

If Not IsNumeric(bd) Then
MsgBox ("veuillez saisir une valeur numérique")

lorsque je tape des lettre j'ai le msg d'erreur mais lorsque je tape par exemple "&3" je n'ai rien.
comment je peux n'introduire que des nombres.

et merci
Configuration: Windows XP Internet Explorer 6.0

5 réponses

  1. thev Messages postés 2010 Date d'inscription   Statut Membre Dernière intervention   723
     
    bd= Replace(bd, ",", ".")
    bd = Val(bd)

    si bd="&3", en final tu auras bd =3 (le & doit être interprété comme le caractère de concaténation)
    0
  2. adelani
     
    Merci thev

    le faite de remplacer la virgule avec le point ca résolu le probleme , mais j'ai trouver d'autre probleme:

    bon voici ce que je veux faire:

    j'ai des zones de text sur une interface vb6, je saisie mes données mais j'ai des condition:
    comme par exemple, "Hmin" doit etre compris entre 0,8 et 40m, bien sur la valuer doit etre numérique (que des nombre) donc je dois mettre des condition sur "Hmin" :

    Private Sub Hmin_Validate(Cancel As Boolean)
    If Not IsNumeric(Hmin) Then
    MSG = MsgBox("veuillez saisir une valeur numérique", vbOKOnly + vbExclamation, "Attention")
    Hmin = ""
    Else
    If Val(Hmin.Text) * 1000 < 799 Then
    MSG = MsgBox("Impossible! profondeur minimal est de 0,8m ", vbOKOnly + vbExclamation, "Attention")
    Hmin = ""
    Else
    If Val(Hmin.Text) > 41 Then
    MSG = MsgBox("Impossible! profondeur max 40m ", vbOKOnly + vbExclamation, "Attention")
    Hmin = ""
    End If
    End If
    End If
    End Sub

    donc si je tape 0,9 la condition de "Hmin* 1000<799" ne passe pas il considere 0,9 comme 0, j'ai essayer de remplacer "," par "." mais je tombe sur la premier message d'erreur Hmin n'est pas une valeur numérique.

    que dois je faire, merci
    0
  3. thev Messages postés 2010 Date d'inscription   Statut Membre Dernière intervention   723
     
    If CDbl(Hmin.Text) * 1000 < 799 Then
    0
  4. adelani
     
    Merci thev, ca marche bien mnt

    reste seulement le point d'interdire à l'utilisateur de tapper un chiffre avec &

    je cherche à faire une recherche sur la chaine de caractere et si la chaine contient "&" je demande à l'utilisateur de corriger.

    est ce qu'il ya une fonction qui peu faire l'affaire.

    Merci
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. thev Messages postés 2010 Date d'inscription   Statut Membre Dernière intervention   723
     
    If Hmin.Text like "*&*" Then
    0