Bonjour,
Pour le premier cas, tu vas avoir un problème lié à l’utilisation de l’évènement Change de la TextBox.
Cet évènement se produit à chaque changement de valeur de la TextBox.
Tu peux donc intercepter le caractère "-" mais si tu interdis simplement sa saisie, rien n’empêchera l’opérateur d’écrire le reste du texte et tu n’obtiendras pas l’effet attendu, à savoir la suppression des caractères suivants (rien n’empêche d’écrire "430588/121402").
Donc, si tu souhaites interdire la saisie du texte à partir de l’apparition du caractère "-", il va falloir que tu gères cette limitation (message d’alerte par exemple).
Une autre solution consiste à attendre la fin de la saisie pour effectuer le contrôle.
Un exemple en utilisant l’évènement LostFocus
Private Sub TextBox1_LostFocus()
If InStr(TextBox1.Value, "-") > 0 Then
TextBox1.Value = Left(TextBox1.Value, InStr(TextBox1.Value, "-") - 1)
End If
End Sub
A+