Bonjour,
Sur un formulaire en mode continu, je voudrais que l'utilisateur puisse
sélectionner des enregistrements "à la souris" pour leur appliquer un
traitement commun. Quelque chose analogue à ce qui se passe qaund on
sélectionne des lignes sous Excel
Les sélections seraient forcément continues.
Pour différentes raisons, je ne peux pas passer le formulaire en mode
feuille de données.
Je pense utiliser les MouseMove, MouseUp, MouseDown. Je pourrais récupérer
la valeur Y sur MouseDown, récupérer l'autre valeur Y sur MouseUp, et
déterminer ainsi les enregistrements sur lequels s'appliquent le traitement,
en connaissant par ailleurs la hauteur de chaque enregistrement.
Est-ce que quelqu'un aurait déjà utilisé ça dans ces formulaires ?
Si vous avez connaissance de bases exemples qui utilisent ça, ça pourrait
m'aider.
Merci !
Ahhh bon... ce que je t'avais donné ne suffisait pas ? ;-((
Mais si... Bien sûr ! Je sens que je vais râmer pour m'en sortir correctement ! ;-)
Moi, je ne me suis pas permis de penser qu'un "if then" serait insurmontable à mon copain Snack !!!
;-)) Disons que ça m'a fait surtout plaisir de voir Laurent ici (au-delà même de son exemple qui va me servir... comme ton post également !). Je crois que j'aggrave mon cas là ! Allez, tchao !
Ahhh bon... ce que je t'avais donné ne suffisait pas ? ;-((
Mais si... Bien sûr ! Je sens que je vais râmer pour m'en sortir
correctement ! ;-)
Moi, je ne me suis pas permis de penser qu'un "if then"
serait insurmontable à mon copain Snack !!!
;-))
Disons que ça m'a fait surtout plaisir de voir Laurent ici (au-delà même de
son exemple qui va me servir... comme ton post également !).
Je crois que j'aggrave mon cas là !
Allez, tchao !
Ahhh bon... ce que je t'avais donné ne suffisait pas ? ;-((
Mais si... Bien sûr ! Je sens que je vais râmer pour m'en sortir correctement ! ;-)
Moi, je ne me suis pas permis de penser qu'un "if then" serait insurmontable à mon copain Snack !!!
;-)) Disons que ça m'a fait surtout plaisir de voir Laurent ici (au-delà même de son exemple qui va me servir... comme ton post également !). Je crois que j'aggrave mon cas là ! Allez, tchao !
?Lo»Paris?
3stone wrote:
Salut,
"snack"
Ah... il est de retour, mon sauveur !
Ahhh bon... ce que je t'avais donné ne suffisait pas ? ;-((
Moi, je ne me suis pas permis de penser qu'un "if then" serait insurmontable à mon copain Snack !!!
Wouarrffff !!! :o)
Ca va Laurent ?
;-)))))
Ouppsss! désolé Pierre, z'avez pas fait attention à ton poste, z'est vrai que Znack doit zavoir faire zela, z'veux touzours en faire trop (tient je zozote ze matin !)
oui oui tout vas bien, merci Pierre, j'espère que toi aussi.
;o)
-- °Laurent°
3stone wrote:
Salut,
"snack"
Ah... il est de retour, mon sauveur !
Ahhh bon... ce que je t'avais donné ne suffisait pas ? ;-((
Moi, je ne me suis pas permis de penser qu'un "if then"
serait insurmontable à mon copain Snack !!!
Wouarrffff !!! :o)
Ca va Laurent ?
;-)))))
Ouppsss! désolé Pierre, z'avez pas fait attention à ton poste, z'est vrai
que Znack doit zavoir faire zela, z'veux touzours en faire trop (tient je
zozote ze matin !)
oui oui tout vas bien, merci Pierre, j'espère que toi aussi.
Ahhh bon... ce que je t'avais donné ne suffisait pas ? ;-((
Moi, je ne me suis pas permis de penser qu'un "if then" serait insurmontable à mon copain Snack !!!
Wouarrffff !!! :o)
Ca va Laurent ?
;-)))))
Ouppsss! désolé Pierre, z'avez pas fait attention à ton poste, z'est vrai que Znack doit zavoir faire zela, z'veux touzours en faire trop (tient je zozote ze matin !)
oui oui tout vas bien, merci Pierre, j'espère que toi aussi.
;o)
-- °Laurent°
?Lo»Paris?
snack wrote:
Ah... il est de retour, mon sauveur ! ça fait plaisir de voir que tu ne perds pas la main ! Merci bien
d'rien, le plaisir est pour moi
;o) -- °Laurent°
snack wrote:
Ah... il est de retour, mon sauveur !
ça fait plaisir de voir que tu ne perds pas la main !
Merci bien
Ah... il est de retour, mon sauveur ! ça fait plaisir de voir que tu ne perds pas la main ! Merci bien
d'rien, le plaisir est pour moi
;o) -- °Laurent°
snack
Je vais encore avoir une question... Je réponds à Pierre mais les réponses de tout le monde m'intéresse !
Quand les enregistrements seront sélectionnées, je vais leur appliquer un traitement quand on va cliquer sur un bouton. Ce bouton a plusieurs finalités suivant que plusieurs lignes sont sélectionnées ou non. J'ai donc besoin de savoir si plusieurs lignes étaient sélectionnées *juste avant* l'appui sur ce bouton (puisque l'appui sur celui-ci réinitialise SelTop et SelHeight). Je voudrais pour cela mémoriser SelTop et SelHeight dans des variables que je réinitialiserai à chaque fois que l'on clique quelque part dans ce formulaire ailleurs que sur ce bouton. Pour ça, j'ai besoin de détecter tous les clics. A priori, le Form_Click ne détecte pas les clics des contrôles qu'il comporte. Est-ce qu'il existe un évènement qui se produit dès que l'utilisateur fait quelque chose (clic, saisie) que je pourrais exploiter, ou dois-je exploiter l'évènement clic des différents contrôles ? Merci !
Regarde les propriétés SelTop et SelHeight
Me.SelTop te donne le premier enregistrement sélectionné Me.SelHeight te donne le nombre d'enregistrements sélectionnés
Je vais encore avoir une question... Je réponds à Pierre mais les réponses
de tout le monde m'intéresse !
Quand les enregistrements seront sélectionnées, je vais leur appliquer un
traitement quand on va cliquer sur un bouton. Ce bouton a plusieurs
finalités suivant que plusieurs lignes sont sélectionnées ou non. J'ai donc
besoin de savoir si plusieurs lignes étaient sélectionnées *juste avant*
l'appui sur ce bouton (puisque l'appui sur celui-ci réinitialise SelTop et
SelHeight).
Je voudrais pour cela mémoriser SelTop et SelHeight dans des variables que
je réinitialiserai à chaque fois que l'on clique quelque part dans ce
formulaire ailleurs que sur ce bouton. Pour ça, j'ai besoin de détecter tous
les clics.
A priori, le Form_Click ne détecte pas les clics des contrôles qu'il
comporte.
Est-ce qu'il existe un évènement qui se produit dès que l'utilisateur fait
quelque chose (clic, saisie) que je pourrais exploiter, ou dois-je exploiter
l'évènement clic des différents contrôles ?
Merci !
Regarde les propriétés SelTop et SelHeight
Me.SelTop te donne le premier enregistrement sélectionné
Me.SelHeight te donne le nombre d'enregistrements sélectionnés
Je vais encore avoir une question... Je réponds à Pierre mais les réponses de tout le monde m'intéresse !
Quand les enregistrements seront sélectionnées, je vais leur appliquer un traitement quand on va cliquer sur un bouton. Ce bouton a plusieurs finalités suivant que plusieurs lignes sont sélectionnées ou non. J'ai donc besoin de savoir si plusieurs lignes étaient sélectionnées *juste avant* l'appui sur ce bouton (puisque l'appui sur celui-ci réinitialise SelTop et SelHeight). Je voudrais pour cela mémoriser SelTop et SelHeight dans des variables que je réinitialiserai à chaque fois que l'on clique quelque part dans ce formulaire ailleurs que sur ce bouton. Pour ça, j'ai besoin de détecter tous les clics. A priori, le Form_Click ne détecte pas les clics des contrôles qu'il comporte. Est-ce qu'il existe un évènement qui se produit dès que l'utilisateur fait quelque chose (clic, saisie) que je pourrais exploiter, ou dois-je exploiter l'évènement clic des différents contrôles ? Merci !
Regarde les propriétés SelTop et SelHeight
Me.SelTop te donne le premier enregistrement sélectionné Me.SelHeight te donne le nombre d'enregistrements sélectionnés
3stone
Salut Snack,
"snack"
Quand les enregistrements seront sélectionnées, je vais leur appliquer un traitement quand on va cliquer sur un bouton. Ce bouton a plusieurs finalités suivant que plusieurs lignes sont sélectionnées ou non. J'ai donc besoin de savoir si plusieurs lignes étaient sélectionnées *juste avant* l'appui sur ce bouton (puisque l'appui sur celui-ci réinitialise SelTop et SelHeight). Je voudrais pour cela mémoriser SelTop et SelHeight dans des variables que je réinitialiserai à chaque fois que l'on clique quelque part dans ce formulaire ailleurs que sur ce bouton. Pour ça, j'ai besoin de détecter tous les clics. A priori, le Form_Click ne détecte pas les clics des contrôles qu'il comporte. Est-ce qu'il existe un évènement qui se produit dès que l'utilisateur fait quelque chose (clic, saisie) que je pourrais exploiter, ou dois-je exploiter l'évènement clic des différents contrôles ?
C'est bien dans Form_Click que tu devras mettre le code pour mémoriser la sélection. Sélection qui se fera sur le "sélecteur" d'enregistrement.
Défini deux variables au niveau formulaire, dans Form_Click tu mémorise et tu exécute par clic sur ton bouton... A la fin du code, tu remets tes variables à zéro, car sinon tu devra scruter le clic dans tous les contrôles du formulaire...
Ca va ?
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
Salut Snack,
"snack"
Quand les enregistrements seront sélectionnées, je vais leur appliquer un
traitement quand on va cliquer sur un bouton. Ce bouton a plusieurs
finalités suivant que plusieurs lignes sont sélectionnées ou non. J'ai donc
besoin de savoir si plusieurs lignes étaient sélectionnées *juste avant*
l'appui sur ce bouton (puisque l'appui sur celui-ci réinitialise SelTop et
SelHeight).
Je voudrais pour cela mémoriser SelTop et SelHeight dans des variables que
je réinitialiserai à chaque fois que l'on clique quelque part dans ce
formulaire ailleurs que sur ce bouton. Pour ça, j'ai besoin de détecter tous
les clics.
A priori, le Form_Click ne détecte pas les clics des contrôles qu'il
comporte.
Est-ce qu'il existe un évènement qui se produit dès que l'utilisateur fait
quelque chose (clic, saisie) que je pourrais exploiter, ou dois-je exploiter
l'évènement clic des différents contrôles ?
C'est bien dans Form_Click que tu devras mettre le code pour mémoriser
la sélection. Sélection qui se fera sur le "sélecteur" d'enregistrement.
Défini deux variables au niveau formulaire, dans Form_Click tu mémorise
et tu exécute par clic sur ton bouton...
A la fin du code, tu remets tes variables à zéro, car sinon tu devra scruter
le clic dans tous les contrôles du formulaire...
Ca va ?
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------
Quand les enregistrements seront sélectionnées, je vais leur appliquer un traitement quand on va cliquer sur un bouton. Ce bouton a plusieurs finalités suivant que plusieurs lignes sont sélectionnées ou non. J'ai donc besoin de savoir si plusieurs lignes étaient sélectionnées *juste avant* l'appui sur ce bouton (puisque l'appui sur celui-ci réinitialise SelTop et SelHeight). Je voudrais pour cela mémoriser SelTop et SelHeight dans des variables que je réinitialiserai à chaque fois que l'on clique quelque part dans ce formulaire ailleurs que sur ce bouton. Pour ça, j'ai besoin de détecter tous les clics. A priori, le Form_Click ne détecte pas les clics des contrôles qu'il comporte. Est-ce qu'il existe un évènement qui se produit dès que l'utilisateur fait quelque chose (clic, saisie) que je pourrais exploiter, ou dois-je exploiter l'évènement clic des différents contrôles ?
C'est bien dans Form_Click que tu devras mettre le code pour mémoriser la sélection. Sélection qui se fera sur le "sélecteur" d'enregistrement.
Défini deux variables au niveau formulaire, dans Form_Click tu mémorise et tu exécute par clic sur ton bouton... A la fin du code, tu remets tes variables à zéro, car sinon tu devra scruter le clic dans tous les contrôles du formulaire...
Ca va ?
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
snack
C'est bien dans Form_Click que tu devras mettre le code pour mémoriser la sélection. Sélection qui se fera sur le "sélecteur" d'enregistrement.
Défini deux variables au niveau formulaire, dans Form_Click tu mémorise et tu exécute par clic sur ton bouton... A la fin du code, tu remets tes variables à zéro, car sinon tu devra scruter
le clic dans tous les contrôles du formulaire...
J'ai du mal ! Le problème : quelqu'un sélectionne des enregistrements puis change d'idée, fais autre chose dans le formulaire et appuie sur le bouton en question (bouton qui a un comportement différent selon qu'on a sélectionné plusieurs enregistrements ou non). Ce qui va se passer : Selection des enregistrements : mémorise les enregistrements sélectionnés dans des variables Changement d'une valeur dans une liste déroulante quelconque du form : l'évènement Form_Click ne se déclanche pas... Les variables ne sont pas réinitialisées Appui sur le bouton en question : les variables contiennent toujours des valeurs. Je "crois" donc que des enregistrements sont sélectionnés (ce qui n'est pas le cas) et j'applique le mauvais traitement.
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas systématiquement. Du coup, je ne peux pas réinitialiser les variables quand les enregistrements ne sont plus sélectionnés (ce qui se passe par exemple quand je change la valeur d'une liste déroulante du form).
C'est bien dans Form_Click que tu devras mettre le code pour mémoriser
la sélection. Sélection qui se fera sur le "sélecteur" d'enregistrement.
Défini deux variables au niveau formulaire, dans Form_Click tu mémorise
et tu exécute par clic sur ton bouton...
A la fin du code, tu remets tes variables à zéro, car sinon tu devra
scruter
le clic dans tous les contrôles du formulaire...
J'ai du mal !
Le problème : quelqu'un sélectionne des enregistrements puis change d'idée,
fais autre chose dans le formulaire et appuie sur le bouton en question
(bouton qui a un comportement différent selon qu'on a sélectionné plusieurs
enregistrements ou non).
Ce qui va se passer :
Selection des enregistrements : mémorise les enregistrements sélectionnés
dans des variables
Changement d'une valeur dans une liste déroulante quelconque du form :
l'évènement Form_Click ne se déclanche pas... Les variables ne sont pas
réinitialisées
Appui sur le bouton en question : les variables contiennent toujours des
valeurs. Je "crois" donc que des enregistrements sont sélectionnés (ce qui
n'est pas le cas) et j'applique le mauvais traitement.
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas
systématiquement. Du coup, je ne peux pas réinitialiser les variables quand
les enregistrements ne sont plus sélectionnés (ce qui se passe par exemple
quand je change la valeur d'une liste déroulante du form).
C'est bien dans Form_Click que tu devras mettre le code pour mémoriser la sélection. Sélection qui se fera sur le "sélecteur" d'enregistrement.
Défini deux variables au niveau formulaire, dans Form_Click tu mémorise et tu exécute par clic sur ton bouton... A la fin du code, tu remets tes variables à zéro, car sinon tu devra scruter
le clic dans tous les contrôles du formulaire...
J'ai du mal ! Le problème : quelqu'un sélectionne des enregistrements puis change d'idée, fais autre chose dans le formulaire et appuie sur le bouton en question (bouton qui a un comportement différent selon qu'on a sélectionné plusieurs enregistrements ou non). Ce qui va se passer : Selection des enregistrements : mémorise les enregistrements sélectionnés dans des variables Changement d'une valeur dans une liste déroulante quelconque du form : l'évènement Form_Click ne se déclanche pas... Les variables ne sont pas réinitialisées Appui sur le bouton en question : les variables contiennent toujours des valeurs. Je "crois" donc que des enregistrements sont sélectionnés (ce qui n'est pas le cas) et j'applique le mauvais traitement.
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas systématiquement. Du coup, je ne peux pas réinitialiser les variables quand les enregistrements ne sont plus sélectionnés (ce qui se passe par exemple quand je change la valeur d'une liste déroulante du form).
3stone
Salut Snack,
"snack"
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas systématiquement. Du coup, je ne peux pas réinitialiser les variables quand les enregistrements ne sont plus sélectionnés (ce qui se passe par exemple quand je change la valeur d'une liste déroulante du form).
Tu peux faire comme ceci... bon, par le début...
'Déclare tes variables pour le SelTop et SelHeight Dim iTop as integer , iNbr as integer
'Dans le form_Click iTop = Me.SelTop iNbr = Me.SelHeight
'Une bête fonction pour simplifier Function RazVar() iTop=0 iNbr=0 End function
'Selectionne TOUS les contrôlent, zones de texte et liste déroulantes 'qui pourraient fausser le résultat... et appelle les propriétés ' Dans la ligne (là ou habituellement se retrouve "Procédure événementielle") ' "Sur souris appuyée" tu mets: =RazVar()
Voilà... tu peux sélectionner les enregistrements, mais si tu "touche" un des contrôles... les variables sont remise à zéro.
Ca marche pour toi ?
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
Salut Snack,
"snack"
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas
systématiquement. Du coup, je ne peux pas réinitialiser les variables quand
les enregistrements ne sont plus sélectionnés (ce qui se passe par exemple
quand je change la valeur d'une liste déroulante du form).
Tu peux faire comme ceci... bon, par le début...
'Déclare tes variables pour le SelTop et SelHeight
Dim iTop as integer , iNbr as integer
'Dans le form_Click
iTop = Me.SelTop
iNbr = Me.SelHeight
'Une bête fonction pour simplifier
Function RazVar()
iTop=0
iNbr=0
End function
'Selectionne TOUS les contrôlent, zones de texte et liste déroulantes
'qui pourraient fausser le résultat... et appelle les propriétés
' Dans la ligne (là ou habituellement se retrouve "Procédure événementielle")
' "Sur souris appuyée" tu mets:
=RazVar()
Voilà... tu peux sélectionner les enregistrements, mais si tu
"touche" un des contrôles... les variables sont remise à zéro.
Ca marche pour toi ?
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas systématiquement. Du coup, je ne peux pas réinitialiser les variables quand les enregistrements ne sont plus sélectionnés (ce qui se passe par exemple quand je change la valeur d'une liste déroulante du form).
Tu peux faire comme ceci... bon, par le début...
'Déclare tes variables pour le SelTop et SelHeight Dim iTop as integer , iNbr as integer
'Dans le form_Click iTop = Me.SelTop iNbr = Me.SelHeight
'Une bête fonction pour simplifier Function RazVar() iTop=0 iNbr=0 End function
'Selectionne TOUS les contrôlent, zones de texte et liste déroulantes 'qui pourraient fausser le résultat... et appelle les propriétés ' Dans la ligne (là ou habituellement se retrouve "Procédure événementielle") ' "Sur souris appuyée" tu mets: =RazVar()
Voilà... tu peux sélectionner les enregistrements, mais si tu "touche" un des contrôles... les variables sont remise à zéro.
Ca marche pour toi ?
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
snack
OK, Pierre. J'avais bien pensé à ça mais je me demandais s'il existait un évènement d'ordre supérieur détectant tous les clics pour tout le formulaire. Je te remercie beaucoup pour tout ! Tchao
"3stone" a écrit dans le message news: #
Salut Snack,
"snack"
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas systématiquement. Du coup, je ne peux pas réinitialiser les variables quand
les enregistrements ne sont plus sélectionnés (ce qui se passe par exemple
quand je change la valeur d'une liste déroulante du form).
Tu peux faire comme ceci... bon, par le début...
'Déclare tes variables pour le SelTop et SelHeight Dim iTop as integer , iNbr as integer
'Dans le form_Click iTop = Me.SelTop iNbr = Me.SelHeight
'Une bête fonction pour simplifier Function RazVar() iTop=0 iNbr=0 End function
'Selectionne TOUS les contrôlent, zones de texte et liste déroulantes 'qui pourraient fausser le résultat... et appelle les propriétés ' Dans la ligne (là ou habituellement se retrouve "Procédure événementielle")
' "Sur souris appuyée" tu mets: =RazVar()
Voilà... tu peux sélectionner les enregistrements, mais si tu "touche" un des contrôles... les variables sont remise à zéro.
Ca marche pour toi ?
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
OK, Pierre.
J'avais bien pensé à ça mais je me demandais s'il existait un évènement
d'ordre supérieur détectant tous les clics pour tout le formulaire.
Je te remercie beaucoup pour tout !
Tchao
"3stone" <threestone@cielreseau.be> a écrit dans le message news:
#aOKZIPoEHA.2612@TK2MSFTNGP15.phx.gbl...
Salut Snack,
"snack"
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas
systématiquement. Du coup, je ne peux pas réinitialiser les variables
quand
les enregistrements ne sont plus sélectionnés (ce qui se passe par
exemple
quand je change la valeur d'une liste déroulante du form).
Tu peux faire comme ceci... bon, par le début...
'Déclare tes variables pour le SelTop et SelHeight
Dim iTop as integer , iNbr as integer
'Dans le form_Click
iTop = Me.SelTop
iNbr = Me.SelHeight
'Une bête fonction pour simplifier
Function RazVar()
iTop=0
iNbr=0
End function
'Selectionne TOUS les contrôlent, zones de texte et liste déroulantes
'qui pourraient fausser le résultat... et appelle les propriétés
' Dans la ligne (là ou habituellement se retrouve "Procédure
événementielle")
' "Sur souris appuyée" tu mets:
=RazVar()
Voilà... tu peux sélectionner les enregistrements, mais si tu
"touche" un des contrôles... les variables sont remise à zéro.
Ca marche pour toi ?
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------
OK, Pierre. J'avais bien pensé à ça mais je me demandais s'il existait un évènement d'ordre supérieur détectant tous les clics pour tout le formulaire. Je te remercie beaucoup pour tout ! Tchao
"3stone" a écrit dans le message news: #
Salut Snack,
"snack"
Ce qui me pose problème, c'est que Form_Click ne se déclanche pas systématiquement. Du coup, je ne peux pas réinitialiser les variables quand
les enregistrements ne sont plus sélectionnés (ce qui se passe par exemple
quand je change la valeur d'une liste déroulante du form).
Tu peux faire comme ceci... bon, par le début...
'Déclare tes variables pour le SelTop et SelHeight Dim iTop as integer , iNbr as integer
'Dans le form_Click iTop = Me.SelTop iNbr = Me.SelHeight
'Une bête fonction pour simplifier Function RazVar() iTop=0 iNbr=0 End function
'Selectionne TOUS les contrôlent, zones de texte et liste déroulantes 'qui pourraient fausser le résultat... et appelle les propriétés ' Dans la ligne (là ou habituellement se retrouve "Procédure événementielle")
' "Sur souris appuyée" tu mets: =RazVar()
Voilà... tu peux sélectionner les enregistrements, mais si tu "touche" un des contrôles... les variables sont remise à zéro.
Ca marche pour toi ?
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------