Probleme UCASE sur un textbox_change()

Résolu
mulder69 Messages postés 36 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 10 novembre 2010 - 5 nov. 2010 à 16:44
mulder69 Messages postés 36 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 10 novembre 2010 - 5 nov. 2010 à 18:58
Bonjour,

J'utilise le petit code suivant dans une procédure textbox_change() (afin de mettre en majuscule la 1er lettre qui y est insérée).

Private Sub TextPrenomCli_Change()
If Len(TextPrenomCli.Text) = 1 Then
TextPrenomCli.Text = UCase(TextPrenomCli.Text)
End If
End Sub

Mon souci est que lorsque le condition est vérifiée (Len=1), la lettre se met bien en majuscule mais le curseur se place avant la majuscule (ce qui évidement pose un problème quand on remplie ce champs).

Quelqu'un connaitrait-il une combine pour que mon curseur continue à suivre sa course normale?

Merci

3 réponses

AlKatou Messages postés 95 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 28 novembre 2017
5 nov. 2010 à 18:32
Ce code devrait répondre à tes attentes.


Private Sub Text1_Change()

' Passe la 1ere lettre en Majuscule et le reste n'est pas changé
Text1.Text = UCase(Left(Text1.Text, 1)) & Mid(Text1.Text, 2)

' Place le curseur en fin de texte si le nombre de caractère _
du texte est 1
If Len(Text1.Text) 1 Then Text1.SelStart Len(Text1.Text)

End Sub


Bonne continuation

AlKatou
3
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
5 nov. 2010 à 18:43
Bonjour,

Avant de modifier, tu mémorise la valeur de TextPrenomCli.SelStart que tu restaure ensuite.

Mon site
3
mulder69 Messages postés 36 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 10 novembre 2010
5 nov. 2010 à 18:58
Merci à vous deux, cela marche enfin!!!! :-) (un weekend qui démarre bien)

@ bientôt pour d'autre soucis (je pense que cette appli m'en posera beaucoup lol)
0
Rejoignez-nous