Change de textbox auto

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Dennnisss

XLDnaute Occasionnel
Bonsoir a tous

J'ai un code dans le userform que je vous envoie et je cherche a faire c,est aussitot qu'il y a trois chiffre dans le premier textbox1 alors qu'il change automatique au textbox2 et ainsi de suite , et attend trois chiffre egalement , par contre si un chiffre a entrer est plus petit que 100 alors il faut que j'entre 099 , je dois me servir de zero pour faire le troisieme chiffre

Alors dans mon code j'ai fait un test avec un message pour que je vois s'il fonctionnait je ne suis pas parvenue

J'ai donc besoin de votre aide svp
Merci dennnisss 😉😉
 

Pièces jointes

Re : Change de textbox auto

Salut Dennnisss

Change ce code
If Len(Controls("TextBox" & CStr(i + j))) <= 3 Then
par celui la
If Len(Controls("TextBox" & CStr(i + j))) >= 3 Then

Aussi il y a une autre raison pour laquelle ca risque de ne pas marcher, c'est l'endroit ou tu mets ton code... Si tu ne fais pas un bouton valider ou autre sur ton userform, celui-ci ne s'initialise qu'une fois et tu ne peux pas prendre en compte ce que tu y ecris vu qu'il est deja initialise et qu'il ne fera rien de plus par la suite...

Bonne nuit

Olivier
 
Dernière édition:
Re : Change de textbox auto

salut Deudecos

Oui dans mon user j,ai effectivement un bouton click
alors je vais tenter de mettre ce code dans le bouton click
moi je croyait que il irais mieux dans le Initialize

donc je vais faire quelque test avec un bouton et je t'en reparle

En attendant merci de ton aide et je te revient

bye bye dennnisss 😉😉
 
Re : Change de textbox auto

bonsoir deudecos,
Il me parait illusoire de vouloir associer ton code à l'initialisation du USF; il me parait plus judicieux de l'associer à l'événement 'Change' de chaque textbox(es).
De plus comment deviner le nombre de chiffres que tu souhaites saisir dans chacune des textbox(es)....à moins d'être devin!
A+
kjin
 
Re : Change de textbox auto

Bonjour,

Code:
Module de classe:
Public WithEvents GrSaisie As MSForms.TextBox
Private Sub GrSaisie_Change()
  If Len(GrSaisie.Value) = 3 Then
     x = GrSaisie.Name
     y = ""
     For i = 1 To Len(x)
       If IsNumeric(Mid(x, i, 1)) Then y = y & Mid(x, i, 1)
     Next i
     If Val(y) = 12 Then y = 0
     UserForm1("textbox" & y + 1).SetFocus
  End If
End Sub

Formulaire:

Dim Txt(1 To 12) As New ClasseSaisie
Private Sub UserForm_Initialize()
   For b = 1 To 12: Set Txt(b).GrSaisie = Me("textbox" & b): Next b
End Sub


JB
Formation Excel VBA JB
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
836
Retour