Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
661 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Conversion string

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Conversion string

n°1667105
gooopil
pfiew
Posté le 07-01-2008 à 14:01:09  profilanswer
 

Hello,
 
toute petite question :
J'ai un champ texte qui va recevoir un décimal.  
Seule la virgule est acceptée pour la conversion, mais j'aimerais pouvoir accepter aussi bien les points que les virgules comme séparateur.  
 
j'ai déjà une solution (remplacer tous les points par des virgules dans la string), mais je me demandzais si y'avait pas une solution plus habile...
 
Merci :)

mood
Publicité
Posté le 07-01-2008 à 14:01:09  profilanswer
 

n°1667443
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 08-01-2008 à 00:36:57  profilanswer
 

c'est pas à toi de décider ça, mais à l'utilisateur (via les paramètres régionaux) :o

n°1667497
gooopil
pfiew
Posté le 08-01-2008 à 09:15:35  profilanswer
 

Harkonnen a écrit :

c'est pas à toi de décider ça, mais à l'utilisateur (via les paramètres régionaux) :o


Ouais mais l'utilisateur est con, et il tape des fois des points, des fois des virgules et c'est ça que je veux gérer [:spamafote] D'ailleurs si tu réfléchis un peu, tu t'appercevras que sur le pavé numérique, c'est un point et pas une virgule... Alors que le système FR utilise une virgule...  
Pour l'instant, je remplace simplement les . par des , mais je sais pas s'il y a pas une autre solution plus habile...

n°1667530
kiki29
Posté le 08-01-2008 à 10:27:37  profilanswer
 

Jour Bon, je ne sais pas si c'est ce que tu recherches
 
4 TextBoxes sur une UserForm :
Pour Saisie Décimale avec impossibilté de saisir autre chose que des chiffres et un séparateur
décimal ,avec substitution de la Virgule par un Point si erreur de frappe
Pour Saisie entiere,Alpha et par exemple 7 chiffres + 1 Lettre


Option Explicit
 
Const entrees_decimales_permises = ".,0123456789" & vbCr & vbBack
Const entrees_entieres_permises = "0123456789" & vbCr & vbBack
Const entrees_alpha_permises = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" & vbCr & vbBack
 
Const Point = "."
Const Virgule = ","
 
Private Sub BtnOk_Click()
    Unload Me
End Sub
 
Private Sub BtnAnnuler_Click()
    Unload Me
End Sub
 
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If KeyAscii = Asc(Point) Then
        If InStr(TextBox1, Virgule) = 0 Then
            KeyAscii = Asc(Virgule)
        Else
            KeyAscii = 0
        End If
    ElseIf InStr(entrees_decimales_permises, Chr(KeyAscii)) = 0 Then
        KeyAscii = 0
    ElseIf InStr(TextBox1, Virgule) > 0 And KeyAscii = Asc(Virgule) Then
        KeyAscii = 0
    End If
 
    If KeyAscii = 13 Then SendKeys "{TAB}": KeyAscii = 0
End Sub
 
Private Sub TextBox2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If InStr(entrees_entieres_permises, Chr(KeyAscii)) = 0 Then KeyAscii = 0
 
    If KeyAscii = 13 Then SendKeys "{TAB}": KeyAscii = 0
End Sub
 
Private Sub TextBox3_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If InStr(entrees_alpha_permises, Chr(KeyAscii)) = 0 Then KeyAscii = 0
 
    If KeyAscii = 13 Then SendKeys "{TAB}": KeyAscii = 0
End Sub
 
Private Sub TextBox4_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    Select Case TextBox4.SelStart
        Case 0 To 6
            If InStr(entrees_entieres_permises, Chr(KeyAscii)) = 0 Then KeyAscii = 0
        Case 7
            If InStr(entrees_alpha_permises, Chr(KeyAscii)) = 0 Then KeyAscii = 0
    End Select
 
    If KeyAscii = 13 Then SendKeys "{TAB}": KeyAscii = 0
End Sub


 
Dans un Module, le code pour un Bouton placé sur Feuil1


Sub BtnSaisie_QuandClic()
    UserForm1.Show
End Sub

n°1774786
TheGni
Scroll, c'est génial!
Posté le 20-08-2008 à 11:18:32  profilanswer
 

Ou sinon, il suffit de faire :  
Val(Str( TonNombreOuIlFautRemplacerLaVirguleParUnPoint ))


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Conversion string

 

Sujets relatifs
Problème de conversion string en const char *Conversion String - Single
VB2005 : Conversion d'une valeur string en valeur numériqueConversion de int et float en string en C
C++ Conversion de string vers longConversion de String vers Byte
Conversion String en Hexa ("1F") vers byteConversion du nom d'une variable en string ?
Conversion d'un string en adresse IP 
Plus de sujets relatifs à : Conversion string


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR