bonjour,

voila sur ma forme, j'ai plein de textbox, permettant la saisie des paramètres machines.

afin de valider uniquement les caracteres j'ai codé ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub TxtCt1R2_change()
   Dim OldSelStart As Long
 
i = Len(TxtCt1R2.Text)
      If Not IsNumeric(Right(Left(TxtCt1R2.Text, i), 1)) Then
        If Not (Right(Left(TxtCt1R2.Text, i), 1)) = "." Then
            If Not (Right(Left(TxtCt1R2.Text, i), 1)) = "," Then
            ' Enregistre la position actuelle du curseur dans le Text1
                OldSelStart = TxtCt1R2.SelStart
            ' Reprend la valeur contenue dans le Text1 ("123b" => 123 ; "b123" => 0)
                TxtCt1R2.Text = CStr(Val(TxtCt1R2.Text))
            ' Restaure la position du curseur
                TxtCt1R2.SelStart = OldSelStart
            End If
        End If
  End If
End Sub
Au lieu de l'état change j'aurais préféré l'etat validation mais il ne veux pas fonctionner.

Mon soucis, c'est que j'ai 26 textbox à controler, n'y aurait il pas une méthode me permettant de ne pas répéter cette action 26 fois, afin que mon code soit moins lourds ?

cordialement