Test sur les caractères entrés dans un TexrBox

Bonjour à tous,

je cherche à créer en Vba quelques lignes qui me permettront d'obliger les utilisateurs à respecter un certain format. Ce format est du type :

premier caractère une lettre comprise entre A et G et en Majuscule

deuxième caractère un nombre compris entre 1 et 10 inclus

donc je veux obtenir par exemple B8 et interdire par exemple L15

le bout de code, ci - dessous, me permet de répondre à mon premier désir. mais comment puis-je poursuivre pour répondre à la suite ? En effet la difficulté, tout au moins pour moi, est due au fait que je passe d'une lettre à un chiffre.

Private Sub Tbox_situation_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Dim caractere As String

' on interdit toutes lettres autres que a, b, c, d, e, f ou g
If (KeyCode < 65 Or KeyCode > 71) Then
If Tbox_situation <> "" Then Tbox_situation = Left(Tbox_situation, Len(Tbox_situation) - 1)
End If
' on force l'écriture en majuscule du caractère accepté
caractere = KeyCode.Value
KeyAscii = Asc(UCase(caractere)
Tbox_situation.Text = UCase(Tbox_situation.Text)

End Sub

Merci et bonne soirée

Jacky

Bonsoir Jacky, Bonsoir le forum,

Essai comme ça :

Private Sub Tbox_situation_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case Len(Me.Tbox_situation.Value)
    Case 0
        If KeyAscii < 65 Or KeyAscii > 71 Then KeyAscii = 8 '{A, B, C, D, E, F, G} uniquement
    Case 1
        If KeyAscii < 49 Or KeyAscii > 57 Then KeyAscii = 8 '{1, 2, 3, 4, 5, 6, 7, 8, 9} uniquement
    Case 2
        If KeyAscii <> 48 Or KeyAscii > 57 Then KeyAscii = 8'{0} uniquement
End Select
End Sub

Bonsoir ThauTheme,

Il est vrai que je ne pense jamais à cette instruction Select Case, qui dans mon cas simplifie énormément la situation.

Je te remercie et l’appliquerai à mon code après l'avoir améliorée : interdire un quatrième caractère (exemple B102) et accepter que l'utilisateur tape le premier caractère en minuscule et le transformer en majuscule.

Merci beaucoup et bonne soirée

Rechercher des sujets similaires à "test caracteres entres texrbox"