IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Ma textbox n'accepte pas les virgules ..


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Par défaut Ma textbox n'accepte pas les virgules ..
    Bonjour,
    Je suis toujours sur ma petite appli de calcul et quelque chose m'echappe :
    - je dois rentrer 2 valeurs dans 2 textbox 1 et 2.
    - Une troisieme textbox fait la moyenne des 2 valeurs.

    Mon calcul fonctionne si je rentre des valeurs entieres et decimales en entrant des . (ex : 42.4 et 46.8) mais si je rentre des virgules à la place des ., il ne prend pas en compte le caractère (ex : 42,2 et 45,4; il fait la moyenne de 43 et 45)

    comment faire pour que les virgules soient acceptées ?????

    merci
      0  0

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut

    Comment gères tu les entrées utilisateur dans tes TextBoxs.
    Quelle formule utilises tu pour le calcul.
    Peux tu nous montrer le code que tu utilises actuellement.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈
      0  0

  3. #3
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Par défaut
    je posterai des que possible ce que tu demandes, je ne suis pas au boulot la, neanmoins, en simplifiant,
    - j'ai mis la longueur max de la valeur a 6
    - Mon format est de type nombre avec 3 decimales
    et ceci dans les 3 texbox.

    Ensuite, c'est vraiment du basique dans le genre, de tête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Texta.Texte = (Val (texteb.texte) + Val (textec.texte)) / 2
    de même, dans une autre textbox qui doit simplement additionner textea et Textb, impossible d'additionner les nombres décimaux. J'ai pourtant mis exactement les mêmes paramètres que les 3 précédantes, donc au moins vec des . cela devrait marcher la, (j'ai par exemple : 4.125 + 3 = 7)
      0  0

  4. #4
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    En considérant que les TextBoxs renvoie un String, j'ai fait exprès de déclarer les variables Nbr1 et Nbr2 en String
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim Nbr1 As String, Nbr2 As String
    Nbr1 = "4.12552789"
    Nbr2 = "3"
    Nbr1 = Replace(Nbr1, ".", ",")
    MsgBox Round((CSng(Nbr1) + CSng(Nbr2)), 3)
    Peut être que cette contribution t'intéressera [Trucs & Astuces] Forcer les touches clavier en numérique elle décrit une façon de gère les problèmes de virgule et point.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈
      0  0

  5. #5
    Membre émérite
    Inscrit en
    Décembre 2007
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 512
    Par défaut
    Bonjour,

    En plus, attention à ceci

    De Progelec

    En considérant que les TextBoxs renvoie un String, j'ai fait exprès de déclarer les variables Nbr1 et Nbr2 en String
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Nbr1 = "42,4"
    Nbr2= "46,8"
    
    Val(Nbr1) donneras comme valeur 42
    val(Nbr2) donneras comme valeur 44
    
    donc tu dois faire, avant tes calculs
    
    Nbr1 = replace(Nbr1,",",".")
    Val(Nbr1) donneras comme valeur 42.4
    Le séparateur de décimales doit être un point
    (car microsoft étant E.U la virgule n'est pas reconnue comme séparateur de décimales)
      0  0

  6. #6
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Par défaut
    merci pour ces explications, cela fonctionne impeccable.
    J'ai maintenant un petit souci qui m'agace et je ne comprends absolument pas pourquoi j'ai ce problème.

    1 Textbox A (Dataformat : nombre 2 decimales - Maxlenght 5) : Je peux donc entrer un nombre style -2.36

    1 Textbox B (Dataformat : nombre 2 decimales - Maxlenght 5) : Je peux donc entrer un nombre style -2,25


    1 Textbox C (Dataformat : nombre 2 decimales - Maxlenght 5) : Je veux que TextBox C me fasse le calcul TextboxA - TextboxB ce qui devrait me donner : -0.11.

    J'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TextC.Text = (Val(TextA.Text) - Val(TextB.Text)
    pourtant mon resultat est 0.36

    Que se passe t'il ??

    PS : en fait,j'ai l'impression que c'est encore une histoire de points et de virgule car ma texbox B me donne un resultat (car elle est fonction d'un r esultat) numérique décimal mais avec une virgule alors que ma TextBox A me le donne avec uniquement des points.

    Je voudrais donc faire en sorte (ne ralez pas .....) que mes valeurs décimales calculéesle soient avec un point et non une virgule
      0  0

Discussion fermée
Cette discussion est résolue.

Discussions similaires

  1. Textbox n'accepte pas les nombres
    Par Bouillou35 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 20/11/2014, 09h18
  2. [VBA] Mon code n'accepte pas les virgules.
    Par kubuntu_user dans le forum Général VBA
    Réponses: 3
    Dernier message: 29/12/2009, 11h27
  3. n'accepte pas les apostrophes
    Par flo456 dans le forum Langage
    Réponses: 6
    Dernier message: 18/09/2006, 14h14
  4. La fonction BuilCriteria n'accepte pas les points
    Par Tofalu dans le forum Access
    Réponses: 3
    Dernier message: 10/07/2006, 12h00
  5. Select dans SQL n'accepte pas la virgule
    Par da_latifa dans le forum Langage SQL
    Réponses: 7
    Dernier message: 06/10/2005, 16h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo