Xl/Vba nbre caractere restant dans label ??

Résolu/Fermé
7808622H Messages postés 292 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 19 mai 2018 - Modifié par 7808622H le 27/12/2012 à 20:54
7808622H Messages postés 292 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 19 mai 2018 - 10 janv. 2013 à 10:31
Bonjour


une petite question sur laquelle je seche :

J'ai un userform1 dans lequel un textbox (TB_Descr) ne doit contenir que 30 caractères maximum

J'ai placé un label a coté (label19) et je voudrais que celui ci indique "OK" ou "PAS OK" selon le nombre de caractères saisi


Voila alors j'ai vaguement trouvé un truc pour limiter le nombre de caractères mais ça marche pas

Private Sub TB_Descr_Initialize()
TB_Descr.MaxLength = 30
End Sub

....du coup j'ai pensé au label qui alerte, mais je ne trouve pas non plus comment faire



Sinon le top serait de voir le nombre de caractères restant dans le label, lorsque l'on saisi dans le Textbox


Voila si quelqu'un peu m'aider ca serait super sympa

Bonne soirée


( attention version d'excel : 2002 , cela implique que tout les codes Vba ne marchent pas forcément



CED
A voir également:

4 réponses

eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
27 déc. 2012 à 22:22
Bonjour,

Normalement pas de raison que MaxLength ne fonctionne pas.
Un exemple (sur 2003) avec MaxLength =30 et affichage du reste :
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    Label1 = "reste : " & 30 - Len(TextBox1)
End Sub

https://www.cjoint.com/?BLBwuTixgwz

eric
1
7808622H Messages postés 292 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 19 mai 2018 4
28 déc. 2012 à 13:16
Génial

Merci Eric, ca marche nickel ( bon j ai juste mis a 29 caracteres sinon j'avais un décallage d'1)

Bonne journée
0
7808622H Messages postés 292 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 19 mai 2018 4
9 janv. 2013 à 21:13
Bonjour Eric

Je me suis apercu d'un petit problème ( bon j'espère que tu verras le message malgrès le RESOLU) concernant les labels qui indiquent le nombre de caractere retant ' dans le deuxieme onglet du formulaire

En effet si tu tentes de saisir une quinzaine de caractères, et qu'en plein milieu tu en sélectionnes quelques uns en les supprimant, le label n'est plus cohérent, parfois il met + de caractères restant que prévu, parfois moins

Y a t'il une solution pour que le label s'actualise a chaque saisie ou modif de saisie ?

https://www.cjoint.com/?0AjviwLLHAA

C'est vraiment le seul dernier petit bug que j'ai recensé ( bon je n'ai pas la bonne version du fichier ici mais le probleme est identique, les dernières modifs ne sont qu'au niveau de formules

Je te remercie d'avance

Passe une bonne soirée
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
9 janv. 2013 à 23:38
Bonsoir,

Oui, même si le fil est résolu je vois quand même les nouveaux messages.

Rajoute :
Sheets("DossContrat").Range("h47").Value = TextBox7.Value
dans l'évènement Change du contrôle.

eric
0
7808622H Messages postés 292 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 19 mai 2018 4
10 janv. 2013 à 09:20
Le probleme c'est que c'est déja le cas

C'est le label correspondant qui s'actualise mal
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
Modifié par eriiic le 10/01/2013 à 09:28
heuu, j'ai dû faire un mauvais copier coller de ligne...
Ajouter :
Label19 = "reste : " & 30 - Len(TextBox7)
dans l'évènement Change

eric
0
7808622H Messages postés 292 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 19 mai 2018 4
10 janv. 2013 à 10:31
Yes apparament c'est tout bon

Merci beaucoup ;-)

Bonne journée Eric
0