Masque de Saisie - TextBox - VBA

Bonjour,

Je veux savoir comment faire le masque de saisie.

Les lettres en majuscule et des chiffres exemple:

A19

MR16

PAR20

Je veux que se soit toujours en majsucule les lettres, mais ca ne peux pas être AA99 parce que desfois c'est seulement A19 comme texte.

Je ne sais pas si c'est clair.

Bonjour,

Pas sûr d'avoir bien compris !

De ce que j'en ai compris, tu veux seulement les lettres en majuscule et les caractères (chiffres et lettres) uniques, c'est ça ?

Donc "ABC123" ---> OK mais "AA22" ---> pas OK !

A tester :

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

    Select Case KeyAscii

        'majuscules
        Case 65 To 90 'ne rien faire !

        'minuscules
        Case 97 To 122: KeyAscii = KeyAscii - 32 'en majuscule

        'chiffres
        Case 48 To 57 'ne rien faire !

        'tout autre caractère interdit
        Case Else: KeyAscii = 0

    End Select

    'empêche une seconde saisie de la même lettre ou chiffre
    If InStr(TextBox1.Text, Chr(KeyAscii)) <> 0 Then KeyAscii = 0

End Sub

Ca va être plus simple comme ça:

Dès qu'une lettre est inscrit le système le met en majuscule.

donc si j'inscrit a19

dans la case sa l'apparait A19

mr16 inscrit MR16

par20 inscrit PAR20

Est-ce que c'est plus claire?

Merci de votre aide

C'est exactement ce que fait le code dans le bloc Select Case :

Select Case KeyAscii

    'majuscules
    Case 65 To 90 'ne rien faire !

    'minuscules
    Case 97 To 122: KeyAscii = KeyAscii - 32 'en majuscule

    'chiffres
    Case 48 To 57 'ne rien faire !

    'tout autre caractère interdit
    Case Else: KeyAscii = 0

End Select

La ligne de code :

If InStr(TextBox1.Text, Chr(KeyAscii)) <> 0 Then KeyAscii = 0

interdit la saisie d'un second caractère identique à celui déjà inscrit !

Rechercher des sujets similaires à "masque saisie textbox vba"