Empecher la saisie de caractères sous vb

irene -  
avinain Messages postés 7 Statut Membre -
bonjour , svp comment empecher un utilisateur de ne saisir que des chiffres dans un textbox, pas de caractères alphabetiques
merci

5 réponses

  1. drizzt40 Messages postés 133 Statut Membre 25
     
    Private Sub NomCombo_KeyPress(KeyAscii As Integer)

    Select Case KeyAscii
    Case vbKey0 To vbKey9
    Case Else
    KeyAscii = 0
    End Select

    End Sub

    =}- The_Str@nger -{=
    1
    1. Florent
       
      Merci beaucoup mais, on l'ajoute ou le code pour que ca fonctionne ??? Moi aussi je cherchais un truc pour les numéros de téléphone !!!!

      Merci d'avance
      Florent
      0
    2. Steph apprenti programmeur
       
      si non tu as la syntaxe:

      if not isNumeric(objet.text) then ...
      mais le problème c'est que tu risques de pouvoir entrer des points et si tu n'en veux pas il faut ruser avec un keyup.
      ex:

      private sub monobjet_KeyUp(blabla auto)
      if keycode = vbkeyDecimal then ... 'vbkeyDecimal c'est le caractère correspondant à la virgule ou au point, pour enlever 'la virgule il faut taper: keycode = 188 (188 correspond à la touche "?/,"
      end sub

      private sub monobjet_click() 'par exemple, moi je met ca sur mes boutons pour éviter les bugs
      if not isNumeric(objet.text) then ...
      end sub

      je te conseil le keyUp si tu veux vider ta textbox ou autre si non il vide la textbox et met la virgule vu que le caractère n'est pas encore saisi (il faut que la touche soit relevé pour que le caractère soit saisi)
      0
  2. irene
     
    merci +++ je vais essayer ce code tt de suite
    0
  3. drizzt40 Messages postés 133 Statut Membre 25
     
    Tu l'ajoute dans le code de ta feuille ou est ta zone de texte ou ta combo box

    =}- The_Str@nger -{=
    0
  4. yashiro
     
    sa marche mais on peut pas suprimer ou modifier dans un textbox
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. avinain Messages postés 7 Statut Membre
     
    Ou sinon tu met un MaskedtextBox,
    Et le code

    MaskedTextBox1.PasswordChar = ("") 
    MaskedtextBox1.Mask = ("99999999")

    Et tu met autant de 9 que tu veux qu' il mette de chiffres !
    0