Bonjour à toutes et à tous,
Je viens ici vous exposer une interrogation qui me permettra si une solution existe d’améliorer mes connaissances et de réduire le nombre de lignes de code.
Voici l’énoncé du Problème :
Sur une feuille Excel j’ai plusieurs TextBox
TextBox1
TextBox2
TextBox3
TextBox4
TextBox5
TextBox6
TextBox7
Pour chaque TextBox de la feuille le code suivant
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
Private Sub TextBox2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
Private Sub TextBox3_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
Ce code permet de saisir du texte en minuscule dans la TextBox et de le transformé simultanément en majuscule.
Vous comprendrez qu’il est long et fastidieux de rentrer pour chaque TextBox (20 à 25 TextBox) ces trois lignes de code.
Je me demande donc s’il n’existe pas une solution pour faciliter et améliorer le codage.
Par exemple un module de classe qui ferait que chaque TextBox et nouvelles TextBox de la feuille Excel auraient une saisie en minuscule qui simultanément passe en majuscule.
Débutant en Visual Basic même si j’ai un peu bidouillé avec VBA la création, l'utilisation et la rationalisation des modules de classe qui demandent bien plus de pratique ne sont pas à ma portée.
Voilà pourquoi je m’adresse à vous.
Merci d’avance à toutes et à tous
Voici un exemple de fichier