Decimal us et europe

Bonjour,

je travaille en VBA, j'ai fais un prgramme ou l'utilisateur a plusieurs textbox a remplir, souvent en décimal, j'aimerai qu'il puisse les entrer aussi bien avec un "." qu'avec une "," je pourrai utiliser la fonction replace, mais il faudrait que je l'affecte a chaque data "dim" et je crois qu'il y a une autre méthode.

1 réponse

  1. Bonjour Pier, bonjour le forum,

    Essaie la procédure KeyPresss appliquée à ta TextBox :
    Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) 'à l'appui d'une touche du clavier
    If KeyAscii = 44 Then KeyAscii = 46: Exit Sub 'si la touche est la virgule, remplace par un point, sort de la procédure
    If KeyAscii = 46 Then Exit Sub 'si la touche est le point, sort de la procédure
    If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 8 'si la touche est différente de {0,1,2,3,4,5,6,7,8,9} efface la touche
    End Sub

    Soit tu le fais pour chaque textbox décimale soit tu utilises un module de classe. C'est plus complexe et il ma faudra plus de renseignement pour cela.