Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Detecter changement de sous formulaire

3 réponses
Avatar
Ryo
Bonjour @ tous et bon week end an avance ;-=FE
Alors aujourd'hui j'ai 2 questions technique (vous avez=20
l'habitude j'en pose r=E9guli=E8rement) et 1 question plus=20
conceptuelle (=E7a c'est nouveau par contre).
Donc voila, dans un formulaire j'ai 2 sous formulaire, le=20
client et son historique, on clique sur le client (c'est=20
un formulaire continu) et son historique s'affiche. Quand=20
on cr=E9e un nouveau client, son historique est vide (normal=20
me dirait vous) je voudrais qu'on ne puisse rien mettre=20
dans l'historique tant que le nouveau client n'est pas=20
enregistr=E9, pour cela j'aimerai savoir:
- Comment on detecte que j'ai chang=E9 de sous formulaire=20
(il y a du texte et des combobox dans l'historique) ?
Je pensais me servir d'un evenement de mes controles ou du=20
sous formulaire lui m=EAme mais pour l'instant rien de ce=20
que j'ai essaye ne marche.
- Donc j'ai detect=E9 qu'on avait chang=E9 de sous formulaire=20
j'affiche un message d'avertissement et... Comment de=20
remet le curseur sur mon sous formulaire client ? J'ai=20
essay=E9 monform.moncontrole.setfocus mais ca marche pas.

Et donc la question plus conceptuelle:
En fait j'aimerai cr=E9er un formulaire qui permette de=20
faire un tri, dans une partie on choisirai les =E9l=E9ments=20
d'entr=E9e du tri (donc les conditions de tri) et dans une=20
autre partie les =E9l=E9ments de sortie (ce qu'on veux voir a=20
l'=E9cran donc). Mais je sais pas trop par ou prendre le=20
probl=E8me, je veux pas faire un truc trop lourd avec des=20
dizaines de controles. Des id=E9e ?

Puis une quatri=E8me question (je sais c'est pas bien j'en=20
annonc=E9 que 3) qui me trotte dans la t=EAte depuis un moment:
- Comment on devient MVP ?

3 réponses

Avatar
Loïc
Bonjour,

Je ne peux répondre qu'à 3 questions :

1) ceci fonctionne sur un contrôle sous-formulaire :

Private Sub devises_sous_formulaire_Exit(Cancel As Integer)
MsgBox "je sors"
[devises_sous_formulaire].Parent.[autre sous-
formulaire].SetFocus
End Sub

2) on peut réaliser un formulaire de tri et de sélection
des champs à afficher, mais cela demande du code !

J'en ai fait plusieurs pour des clients, cela tourne
tourne autour d'une listbox basée sur une table, que je
mets à jour à l'aide de boutons (AZ, ZA, Display... puis
requery de la listbox).

Lorsqu'on demande à voir le résultat, lire la listbox
(propriété Column) et générer au fur et à mesure une
phrase SQL (SELECT champs à afficher FROM ... ORDER BY
champs sur lesquels on trie ASC|DESC...).

Bon week-end...

Loïc
www.i--land.com
-----Message d'origine-----
Bonjour @ tous et bon week end an avance ;-þ
Alors aujourd'hui j'ai 2 questions technique (vous avez
l'habitude j'en pose régulièrement) et 1 question plus
conceptuelle (ça c'est nouveau par contre).
Donc voila, dans un formulaire j'ai 2 sous formulaire, le
client et son historique, on clique sur le client (c'est
un formulaire continu) et son historique s'affiche. Quand
on crée un nouveau client, son historique est vide
(normal

me dirait vous) je voudrais qu'on ne puisse rien mettre
dans l'historique tant que le nouveau client n'est pas
enregistré, pour cela j'aimerai savoir:
- Comment on detecte que j'ai changé de sous formulaire
(il y a du texte et des combobox dans l'historique) ?
Je pensais me servir d'un evenement de mes controles ou
du

sous formulaire lui même mais pour l'instant rien de ce
que j'ai essaye ne marche.
- Donc j'ai detecté qu'on avait changé de sous formulaire
j'affiche un message d'avertissement et... Comment de
remet le curseur sur mon sous formulaire client ? J'ai
essayé monform.moncontrole.setfocus mais ca marche pas.

Et donc la question plus conceptuelle:
En fait j'aimerai créer un formulaire qui permette de
faire un tri, dans une partie on choisirai les éléments
d'entrée du tri (donc les conditions de tri) et dans une
autre partie les éléments de sortie (ce qu'on veux voir a
l'écran donc). Mais je sais pas trop par ou prendre le
problème, je veux pas faire un truc trop lourd avec des
dizaines de controles. Des idée ?

Puis une quatrième question (je sais c'est pas bien j'en
annoncé que 3) qui me trotte dans la tête depuis un
moment:

- Comment on devient MVP ?

.



Avatar
Cool ca marche !
Reste plus qu'à ce que je réussice à me mettre sur le
controle que je veux (sinon il reprendre le dernier
controle actif...)
le Private Sub MonForm_Exit(Cancel As Integer) c'est bien
mais si j'ai d'autre sous formulaire ca marche pas...
enfin pas comme il faut fodrait que je detecte l'entree
(Enter va t on me dire) mais ca marche pas non plus...
Pour le tri et la sélection j'avais une idée dans le style
de la tienne ou je crée une requête qui a toute les tables
dont j'ai besoin et je rajoute à cette requête les
conditions et les champs qui m'interesse en les
selectionnant par des combobox...
Merci beaucoup en tout cas.
-----Message d'origine-----
Bonjour,

Je ne peux répondre qu'à 3 questions :

1) ceci fonctionne sur un contrôle sous-formulaire :

Private Sub devises_sous_formulaire_Exit(Cancel As
Integer)

MsgBox "je sors"
[devises_sous_formulaire].Parent.[autre sous-
formulaire].SetFocus
End Sub

2) on peut réaliser un formulaire de tri et de sélection
des champs à afficher, mais cela demande du code !

J'en ai fait plusieurs pour des clients, cela tourne
tourne autour d'une listbox basée sur une table, que je
mets à jour à l'aide de boutons (AZ, ZA, Display... puis
requery de la listbox).

Lorsqu'on demande à voir le résultat, lire la listbox
(propriété Column) et générer au fur et à mesure une
phrase SQL (SELECT champs à afficher FROM ... ORDER BY
champs sur lesquels on trie ASC|DESC...).

Bon week-end...

Loïc
www.i--land.com
-----Message d'origine-----
Bonjour @ tous et bon week end an avance ;-þ
Alors aujourd'hui j'ai 2 questions technique (vous avez
l'habitude j'en pose régulièrement) et 1 question plus
conceptuelle (ça c'est nouveau par contre).
Donc voila, dans un formulaire j'ai 2 sous formulaire,
le


client et son historique, on clique sur le client (c'est
un formulaire continu) et son historique s'affiche.
Quand


on crée un nouveau client, son historique est vide
(normal

me dirait vous) je voudrais qu'on ne puisse rien mettre
dans l'historique tant que le nouveau client n'est pas
enregistré, pour cela j'aimerai savoir:
- Comment on detecte que j'ai changé de sous formulaire
(il y a du texte et des combobox dans l'historique) ?
Je pensais me servir d'un evenement de mes controles ou
du

sous formulaire lui même mais pour l'instant rien de ce
que j'ai essaye ne marche.
- Donc j'ai detecté qu'on avait changé de sous
formulaire


j'affiche un message d'avertissement et... Comment de
remet le curseur sur mon sous formulaire client ? J'ai
essayé monform.moncontrole.setfocus mais ca marche pas.

Et donc la question plus conceptuelle:
En fait j'aimerai créer un formulaire qui permette de
faire un tri, dans une partie on choisirai les éléments
d'entrée du tri (donc les conditions de tri) et dans une
autre partie les éléments de sortie (ce qu'on veux voir
a


l'écran donc). Mais je sais pas trop par ou prendre le
problème, je veux pas faire un truc trop lourd avec des
dizaines de controles. Des idée ?

Puis une quatrième question (je sais c'est pas bien j'en
annoncé que 3) qui me trotte dans la tête depuis un
moment:

- Comment on devient MVP ?

.

.





Avatar
3stone
Salut,

"Ryo"
[...]
Puis une quatrième question (je sais c'est pas bien j'en
annoncé que 3) qui me trotte dans la tête depuis un moment:
- Comment on devient MVP ?


On paye à boire à Bill ;-))

http://mvp.support.microsoft.com/default.aspx?LN=FR&x&y



--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------