VBA setfocus ne marche pas??

Fermé
benoit_iund Messages postés 121 Date d'inscription jeudi 29 janvier 2004 Statut Membre Dernière intervention 30 mai 2008 - 25 août 2005 à 13:57
benoit_iund Messages postés 121 Date d'inscription jeudi 29 janvier 2004 Statut Membre Dernière intervention 30 mai 2008 - 8 sept. 2005 à 11:36
salut,

je programme une Userform en vba sous access et je voudras forcer l'utilisateur à rentre une date dans une textbox.
Je test la valeur saisie sur l'evenement exit de ma textbox
et j'essai de lui redonner le focus avec set focus.
Je ne comprend pas. lorsque j'arrive a lui re-donner le focus aucun curseur n'apparait?

Si vous connaisser le probleme... merci d'avance

6 réponses

RicHamilton Messages postés 49 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 18 juillet 2006
29 août 2005 à 16:07
salut l'ami!
Pourquoi te casserais-tu la tête de la sorte? il existe déjà un contrôle ActiveX appelé Microsoft Date/Time Picker dont le fichier est nommé MsComCtl2.ocx. T'as juste qu'à le rechercher dans la liste des références de ton éditeur visual basic et le tour est joué!

Bonne chance!
0
WhiteFang Messages postés 2056 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
29 août 2005 à 18:20
;-)

Si la valeur entrée n'est pas bonne, utilise le SelStart et le SelLenght pour donner du visuel à ton SetFocus, cela va te sélectionner le contenu de la zone de texte, cela sera plus "visible"...

Sinon, la soluce de "Rick" n'est pas mauvaise, mais dans cette optique, le contrôle Calendrier est encore plus "fun" !! Et simple à gérer : Récupération du .Value... Et tout aussi simple à utiliser : Tu vas dans les "contrôle supplémentaires" de ta boîte à outils et tu le rajoutes... Mais tout dépends de ta version du pack office...

;-)
0
benoit_iund Messages postés 121 Date d'inscription jeudi 29 janvier 2004 Statut Membre Dernière intervention 30 mai 2008 43
30 août 2005 à 14:14
merci les ga,
pour les propiétés SelStart et le SelLenght j'ai deja fait l'essai.
Et malgres que les instructions soit executées et que la zone soit correctement selectionnée rien n'apparait.
Mais si il existe déja un outils...tan mieux
je teste ça immédiatement

a+
0
benoit_iund Messages postés 121 Date d'inscription jeudi 29 janvier 2004 Statut Membre Dernière intervention 30 mai 2008 43
30 août 2005 à 14:23
Merci, ca va mieux.
J'ai beaucoup moins a faire tous d'un coup.. lol
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
WhiteFang Messages postés 2056 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
30 août 2005 à 14:27
;-) Résolu ! ;-)
0
benoit_iund Messages postés 121 Date d'inscription jeudi 29 janvier 2004 Statut Membre Dernière intervention 30 mai 2008 43
30 août 2005 à 14:42
oui resolu et + encore
mais je n'ai pas saisie pourquoi setfocus se comportais comme ça?

Enfin merci a vous
0
WhiteFang Messages postés 2056 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
30 août 2005 à 14:56
;-)

En fait, le SetFocus, sur une zone de texte, n'est pas vraiment apparent, surtout si la zone est vide... Il faut, par exemple, faire un .Refresh pour réactualiser la UserForm, et encore, des fois... En plus, Access n'est pas "tip top" raccord avec VB, ce qui, des fois, est dur à gérer, et force à trouver des solutions détournées et un peu lourdes... L'avantage, c'est qu'il y a une solution à tout...

Alors, tu a opté pour quelle solution ? L'OCX où le contrôle Calendrier ?

;-)
0
benoit_iund Messages postés 121 Date d'inscription jeudi 29 janvier 2004 Statut Membre Dernière intervention 30 mai 2008 43 > WhiteFang Messages postés 2056 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008
8 sept. 2005 à 11:36
le contrôle Calendrier.

bye
0