OVH Cloud OVH Cloud

"Exit" inexistant avec TextBox dans les modules de classes

12 réponses
Avatar
Patrick Fredin
Bonjour,

Pour les TextBoxes, l'événement "Exit" n'existe pas dans les modules de
classe. Y a-t-il un moyen de traiter cet événement autrement que de le faire
pour tous les TextBoxes ?

Merci pour votre aide.

--
Patrick

10 réponses

1 2
Avatar
anonymousA
bonsoir,

Exit, Enter, BeforeUpdate et AfterUpdate sont des evenements non gérés
par un module de classe pour un TextBox.
Il faudrait chercher à s'en sortir autrement.Mais en réalité la
question, c'est que veux-tu faire exactement car il est possible
peut-être d'utiliser un moyen pour aboutir au même résultat.

A+

Bonjour,

Pour les TextBoxes, l'événement "Exit" n'existe pas dans les modules de
classe. Y a-t-il un moyen de traiter cet événement autrement que de le faire
pour tous les TextBoxes ?

Merci pour votre aide.



Avatar
Clément Marcotte
Bonjour,

question, c'est que veux-tu faire exactement car il est possible
peut-être d'utiliser un moyen pour aboutir au même résultat.


Dans son autre fil, il dit qu'il veut formater ses dates, pour avoir
un affichage uniforme.

Avatar
Patrick Fredin
Ah, j'avais encore oublié d'expliquer ce que je souhaite faire avec cet
événement. Merci Clément de suivre mon problème.

C'est sûr que je peux utiliser l'événement de chacun des objets mais le code
va devenir interminable (il en a 36).

Merci.


Bonjour,

question, c'est que veux-tu faire exactement car il est possible
peut-être d'utiliser un moyen pour aboutir au même résultat.


Dans son autre fil, il dit qu'il veut formater ses dates, pour avoir
un affichage uniforme.







Avatar
Clément Marcotte
Bonjour,

Dans son autre fil, il dit qu'il veut formater ses dates, pour
avoir


un affichage uniforme.


C'est sûr que je peux utiliser l'événement de chacun des objets mais
le code

va devenir interminable (il en a 36).


Et si dans "l'Exit" de chaque contrôle, tu mets:

testdate le_numéro_du_contrôle

Dans un module standard, tu mets une macro

sub testdate (le_numéro_du_contrôle)
procédure de test et réaffichage
end sub

Sauf horreur de ma part, cela devrait passer comme du beurre dans la
poêle. Comme tu passerais le numéro du contrôle, ou au pire, son nom
au complet, à la procédure de test, tu pourrais agir sur le bon
contrôle, sans réécrire 36 fois ta procédure.


Avatar
Patrick Fredin
Je suis d'accord avec toi. Il me semble que c'est la seule solution mais il
faut quand même le faire pour l'événement de chaque TextBox, c'est ce que
j'aurais aimé éviter. Mais ce n'est pas grave. Je vais faire avec... ou sans.

Merci.



Bonjour,

Dans son autre fil, il dit qu'il veut formater ses dates, pour
avoir


un affichage uniforme.


C'est sûr que je peux utiliser l'événement de chacun des objets mais
le code

va devenir interminable (il en a 36).


Et si dans "l'Exit" de chaque contrôle, tu mets:

testdate le_numéro_du_contrôle

Dans un module standard, tu mets une macro

sub testdate (le_numéro_du_contrôle)
procédure de test et réaffichage
end sub

Sauf horreur de ma part, cela devrait passer comme du beurre dans la
poêle. Comme tu passerais le numéro du contrôle, ou au pire, son nom
au complet, à la procédure de test, tu pourrais agir sur le bon
contrôle, sans réécrire 36 fois ta procédure.





Avatar
anonymousA
ben comme ca, je ne vois guere de possibiltés en dehors de celle
effectivement indiquée par Clément.
Ca a le mérite d'être simple et ca marchera à tous les coups.

A+

Ah, j'avais encore oublié d'expliquer ce que je souhaite faire avec cet
événement. Merci Clément de suivre mon problème.

C'est sûr que je peux utiliser l'événement de chacun des objets mais le code
va devenir interminable (il en a 36).

Merci.



Bonjour,


question, c'est que veux-tu faire exactement car il est possible
peut-être d'utiliser un moyen pour aboutir au même résultat.


Dans son autre fil, il dit qu'il veut formater ses dates, pour avoir
un affichage uniforme.









Avatar
Patrick Fredin
Y a-t-il un moyen de savoir quel est le nom de l'objet dont l'événement vient
d'être déclenché, par exemple "txtNom" sans l'écrire dans la procédure de
l'événement ?

Merci.


Bonjour,

Dans son autre fil, il dit qu'il veut formater ses dates, pour
avoir


un affichage uniforme.


C'est sûr que je peux utiliser l'événement de chacun des objets mais
le code

va devenir interminable (il en a 36).


Et si dans "l'Exit" de chaque contrôle, tu mets:

testdate le_numéro_du_contrôle

Dans un module standard, tu mets une macro

sub testdate (le_numéro_du_contrôle)
procédure de test et réaffichage
end sub

Sauf horreur de ma part, cela devrait passer comme du beurre dans la
poêle. Comme tu passerais le numéro du contrôle, ou au pire, son nom
au complet, à la procédure de test, tu pourrais agir sur le bon
contrôle, sans réécrire 36 fois ta procédure.








Avatar
anonymousA
je ne suis pas sur de comprendre la question. Peux-tu préciser ?

A+

Y a-t-il un moyen de savoir quel est le nom de l'objet dont l'événement vient
d'être déclenché, par exemple "txtNom" sans l'écrire dans la procédure de
l'événement ?

Merci.



Bonjour,


Dans son autre fil, il dit qu'il veut formater ses dates, pour



avoir

un affichage uniforme.


C'est sûr que je peux utiliser l'événement de chacun des objets mais


le code

va devenir interminable (il en a 36).


Et si dans "l'Exit" de chaque contrôle, tu mets:

testdate le_numéro_du_contrôle

Dans un module standard, tu mets une macro

sub testdate (le_numéro_du_contrôle)
procédure de test et réaffichage
end sub

Sauf horreur de ma part, cela devrait passer comme du beurre dans la
poêle. Comme tu passerais le numéro du contrôle, ou au pire, son nom
au complet, à la procédure de test, tu pourrais agir sur le bon
contrôle, sans réécrire 36 fois ta procédure.










Avatar
Patrick Fredin
Pour chaque TextBox je vais ajouter la procédure :

Private Sub txt09_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Call DatesFormat(txt09)
End Sub

où "txt09" est le nom d'un TextBox, mais j'en ai 36 comme cela.

Dans "Call DatesFormat(txt09)", est-il possible de remplacer "txt09" par une
propriété ou une méthode quelconque qui détermine le nom de l'objet, en
l'occurence "txt09" ?

Merci.


je ne suis pas sur de comprendre la question. Peux-tu préciser ?

A+

Y a-t-il un moyen de savoir quel est le nom de l'objet dont l'événement vient
d'être déclenché, par exemple "txtNom" sans l'écrire dans la procédure de
l'événement ?

Merci.



Bonjour,


Dans son autre fil, il dit qu'il veut formater ses dates, pour



avoir

un affichage uniforme.


C'est sûr que je peux utiliser l'événement de chacun des objets mais


le code

va devenir interminable (il en a 36).


Et si dans "l'Exit" de chaque contrôle, tu mets:

testdate le_numéro_du_contrôle

Dans un module standard, tu mets une macro

sub testdate (le_numéro_du_contrôle)
procédure de test et réaffichage
end sub

Sauf horreur de ma part, cela devrait passer comme du beurre dans la
poêle. Comme tu passerais le numéro du contrôle, ou au pire, son nom
au complet, à la procédure de test, tu pourrais agir sur le bon
contrôle, sans réécrire 36 fois ta procédure.













Avatar
anonymousA
ben , en dehors de Activecontrol.name, je ne vois pas mais peut-être je
ne réponds pas à ta question.

A+


Pour chaque TextBox je vais ajouter la procédure :

Private Sub txt09_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Call DatesFormat(txt09)
End Sub

où "txt09" est le nom d'un TextBox, mais j'en ai 36 comme cela.

Dans "Call DatesFormat(txt09)", est-il possible de remplacer "txt09" par une
propriété ou une méthode quelconque qui détermine le nom de l'objet, en
l'occurence "txt09" ?

Merci.



je ne suis pas sur de comprendre la question. Peux-tu préciser ?

A+


Y a-t-il un moyen de savoir quel est le nom de l'objet dont l'événement vient
d'être déclenché, par exemple "txtNom" sans l'écrire dans la procédure de
l'événement ?

Merci.




Bonjour,



Dans son autre fil, il dit qu'il veut formater ses dates, pour



avoir


un affichage uniforme.


C'est sûr que je peux utiliser l'événement de chacun des objets mais


le code


va devenir interminable (il en a 36).


Et si dans "l'Exit" de chaque contrôle, tu mets:

testdate le_numéro_du_contrôle

Dans un module standard, tu mets une macro

sub testdate (le_numéro_du_contrôle)
procédure de test et réaffichage
end sub

Sauf horreur de ma part, cela devrait passer comme du beurre dans la
poêle. Comme tu passerais le numéro du contrôle, ou au pire, son nom
au complet, à la procédure de test, tu pourrais agir sur le bon
contrôle, sans réécrire 36 fois ta procédure.















1 2