Comment se positionner sur le control souhaité après avoir saisi un 1er control (usf)

zombe

XLDnaute Occasionnel
Salut le forum

Je saisis une information dans le textbox8.
Après avoir renseigné le dit textbox, je souhaite que le curseur se positionne sur le textbox11.
Voici le code que j’ai essayé de réalisé en m’inspirant d’un cas un peu similaire.
N.B : il n’ay pas de problème sur la condition.
Avec le code ci-dessous, le curseur se positionne sur le textbox10 et non sur le textbox11 comme je le souhaite.
Code:
Private Sub Textbox8_exit(ByVal cancel As MSForms.ReturnBoolean)
If TypeCompte.Temporaire1.Caption = "SOLARD" And TextBox8.Value <> "" Then
Textbox11.SetFocus
End If
End Sub
De façon générale, comment pouvoir me positionner sur le control voulu après avoir renseigné un control (textbox ou combobox ?
Merci de m’aider
 

zombe

XLDnaute Occasionnel
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Salut Papou
Ci-joint un fichier.
Si c'est SOLDE PUBLIQUE, après avoir renseigner le textbox8, je souhaite aller directement sur le Tboxphone.
Sinon c'est DOMICVILIATION PRIVE, après avoir renseigné le textbox6, je souhaite me positionner directement en TBpBox.
 

Pièces jointes

  • saut_control.xlsm
    27.4 KB · Affichages: 49

Pierrot93

XLDnaute Barbatruc
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Bonjour,

pas 2007 sous le coude, mais essaye peut être en modifiant l'ordre de tabulation, dans l'éditeur vba => click droit dans l'USF => ordre de tabulation.... enfin si j'ai bien compris...

bonne journée
@+
 

Pierrot93

XLDnaute Barbatruc
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Re,

si la tabulation est conditionnelle, ce qui semble être le cas :
Code:
Option Explicit
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.Value = "toto" Then TextBox3.SetFocus
End Sub

une instruction comme celle-ci fonctionne chez moi....
 

zombe

XLDnaute Occasionnel
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Salut Pierrot
Merci pour votre contribution.
C'est une tabulation conditionnelle.
Je ne sais pas si vous avez testé mon fichier?
Si oui je pense que vous devrez savoir de quoi je souffre.
Votre exemple fonctionne mais mon cas est différent et je vous invite ci possible à y jeter un coup d'oeil afin de le tester pour voir ce qui ne marche pas chez moi.
Merci
 

Papou-net

XLDnaute Barbatruc
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Bonjour zombe, Pierrot93,

@ zombe

Ne me demande pas pourquoi, mais en modifiant la ligne :

Code:
If TypeCompte.Temporaire1.Caption = "SOLDE PUBLIQUE" And TextBox8.Value <> "" Then
par :

Code:
If TypeCompte.Temporaire1.Caption = "SOLDE PUBLIQUE" And Not TextBox8.Value = "" Then
ça fonctionne.

Il devrait en être de même concernant le contrôle TextBox6.

Tu peux d'ailleurs vérifier sur le fichier ci-joint.

Bonne journée.

Cordialement.
 

Pièces jointes

  • Copie de saut_control.xlsm
    27.8 KB · Affichages: 45

zombe

XLDnaute Occasionnel
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Salut Papou

J'ai essayé ton fichier mais c'est le même résultat que celui du fichier initial sauf erreur de ma part.
En rappel, lorsque je sélectionne SOLDE PUBLIQUE, après avoir renseigné le textbox8, je souhaite que le curseur se positionne sur le champ ou le numero de téléphone devra être saisi sinon si c'est DOMICILIATION PRIVE que je sélectionne, après avoir renseigné le textbox6, le curseur devra se positionner sur le champ reservé à la boite postale.
Encore merci pour votre intervention
 

Papou-net

XLDnaute Barbatruc
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

RE zombe,

Effectivement, j'avais mal interprété.

J'ai donc repris le problème à zéro : en fait, en lieu et place de la procédure "Exit", j'ai utilisé la procédure "KeyDown". Si la touche ENTER est frappée, alors le saut se fait bien en fonction des conditions fixées.

Pour simplifier le code, j'ai remplacé le contrôle Label (Temporaire1) par un TextBox de même nom et de même aspect. J'ai fixé la propriété ControlSource de ce TextBox à la cellule C4 de la feuille DONNE.

Après ces quelques modifs, cela semble fonctionner comme attendu, mais je te laisse le soin de vérifier par toi-même.

Bonne journée.

Cordialement.
 

Pièces jointes

  • Copie 01 de saut_control.xlsm
    30.9 KB · Affichages: 42

zombe

XLDnaute Occasionnel
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Salut Papou
Vraiment t'es super.
Ca fonctionne à volonté.
Cette solution me permettra de résoudre d'autres problèmes que j'avais fait avec la méthode exit et qui ne fonctionnait pas.
Avant de fermer pouvez-vous m'éclairer sur certaines notions et sans abuser de ta disponibilité:
quelle différence y'a t-il entre Me.textbox6 et textbox6 (pourquoi utilise t-on le me)?
merci pour tout
 

Papou-net

XLDnaute Barbatruc
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Avant de fermer pouvez-vous m'éclairer sur certaines notions et sans abuser de ta disponibilité:
quelle différence y'a t-il entre Me.textbox6 et textbox6 (pourquoi utilise t-on le me)?
merci pour tout

RE zombe :

Il n'y a pas de différence car "Me." désigne le UserForm actif. Il est donc superflu de le rappeler.

J'avais essayé de le rajouter lors de mes recherches avec la procédure Exit initiale et j'ai omis de les supprimer. Tu peux tenter de les enlever, le programme devrait fonctionner tout aussi bien.

Espérant avoir répondu.

Cordialement.
 

Si...

XLDnaute Barbatruc
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

salut

une autre possibilité sans toucher au Exit :
l'UsF retient l'ordre de création des contrôles. En changeant leur nom, on ne connait plus cet ordre.
Dans l'USF affiché, permute les 2 contrôles par glissement et réadapte les noms.
 

Papou-net

XLDnaute Barbatruc
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

salut

une autre possibilité sans toucher au Exit :
l'UsF retient l'ordre de création des contrôles. En changeant leur nom, on ne connait plus cet ordre.
Dans l'USF affiché, permute les 2 contrôles par glissement et réadapte les noms.

Bonjour Si...,

Ton astuce est intéressante, toutefois ça ne répond pas au besoin de notre ami zombe car le focus du contrôle suivant dépend de la valeur du contrôle précédent.

Cordialement.
 

zombe

XLDnaute Occasionnel
Re : Comment se positionner sur le control souhaité après avoir saisi un 1er control

Salut Papou et Si
Merci pour vos éclaircissemnts.
La méthode de papou est efficace.
J'avais tenté en vain la méthode de Si et comme ca n'a pas marché, j'ai fait recours au forum avec ce sujet.
Dieu merci Papou a trouvé la solution magique.
 

Discussions similaires

Statistiques des forums

Discussions
312 299
Messages
2 086 991
Membres
103 422
dernier inscrit
victus5