Boîte de texte avec nombre de ligne limité sous ActiveX Controls

Fermé
Laurent - 5 sept. 2017 à 13:20
m@rina Messages postés 20075 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 25 avril 2024 - 7 sept. 2017 à 18:38
Bonjour,
Comment peut-on limiter le nombre de ligne dans une zone de texte créé sous ActiveX Controls?

Merci
A voir également:

1 réponse

m@rina Messages postés 20075 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 25 avril 2024 11 271
7 sept. 2017 à 18:31
Bonjour,

Oui, avec la propriété LineCount

Supposant que ton contrôle ActiveX se nomme TextBox1 :

Private Sub TextBox1_Change()
If TextBox1.LineCount > 3 Then
MsgBox "Nombre de lignes maxi atteint"
End If
End Sub

m@rina

0
m@rina Messages postés 20075 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 25 avril 2024 11 271
7 sept. 2017 à 18:38
Re...

Je suis en train de penser que malgré ce code, l'utilisateur pourra re-saisir un caractère.

Si l'objet est de juste vérifier qu'on n'a pas saisi trop de lignes, ce code convient. Par contre, si on veut vraiment bloquer l'utilisateur, j'ajouterais un blocage de la zone :

Private Sub TextBox1_Change()
If TextBox1.LineCount > 3 Then
MsgBox "nombre de lignes atteint"
TextBox1.Locked = True
End If
End Sub


et je mettrais un déblocage lorsqu'il prend le focus :

Private Sub TextBox1_GotFocus()
TextBox1.Locked = False
End Sub
0