OVH Cloud OVH Cloud

cocher un ensemble de cases

10 réponses
Avatar
Marcotte300
Bonjour tout le monde,

Dans un formulaire je souhaite placer un bouton de=20
commande ou bien une case =E0 cocher qui d'un simple clic=20
me permetterait de cocher un ensemble de cases =E0 cocher=20
contenu dans les enregistrements d'un sous-formulaire.

Existe-t-il une proc=E9dure pour cela?

Merci d'avance

10 réponses

Avatar
Raymond [mvp]
Bonjour.

si tu la fait, elle existera.
selon le nombre et les noms des contrôles tu peux le faire en ligne ou en
boucle. A voir.
sinon en ligne:
dans l'événement AfterUpdate de la case à cocher (nommée Cocher1 par
exemple):
Forms!formulairePrincipal!sous_formulaire!Cocherx.Visible = Me.Cocher1
Forms!formulairePrincipal!sous_formulaire!Cochery.Visible = Me.Cocher1
Forms!formulairePrincipal!sous_formulaire!Cocherz.Visible = Me.Cocher1
etc etc....
tu peut mettre = Not Me.Cocher1 au lieu de = Me.Cocher1 pour inverser le
sens.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a écrit dans le message
de news: 1eb401c4b5d2$a4822a10$
Bonjour tout le monde,

Dans un formulaire je souhaite placer un bouton de
commande ou bien une case à cocher qui d'un simple clic
me permetterait de cocher un ensemble de cases à cocher
contenu dans les enregistrements d'un sous-formulaire.

Existe-t-il une procédure pour cela?

Merci d'avance
Avatar
Ilan
Bonjour,
je crois qu'il y a un control pour faire cela : Groupe d'options
L'icone --XYZ--- de la boite a outils.
Valeur des options=True (ou False)
Place tes options a l'interieur du cadre

1 case a cocher a l'exterieur(Ex: Cocher0). et dans La propriete SOURCE du
Groupe d'option ecris : =Cocher0.Value

Quand tu cliqueras dans cocher0 toutes les cases du groupes prendront sa
valeur.





Bonjour tout le monde,

Dans un formulaire je souhaite placer un bouton de
commande ou bien une case à cocher qui d'un simple clic
me permetterait de cocher un ensemble de cases à cocher
contenu dans les enregistrements d'un sous-formulaire.

Existe-t-il une procédure pour cela?

Merci d'avance



Avatar
Marcotte300
Bonjour,

L'art de bien expliquer ce que l'on souhaite, pas évident
sutout en informatique.

La solution proposée par Ilan et Raymond fonctionne,
mais...

Dans mon sous-formulaire, je n'ai qu'un seul champ de
type oui/non (case à cocher). Par contre dans ce même
sous-formulaire j'ai une ou plusieurs ligne
d'enregistrement. Et quand je clique sur la case à cocher
de mon formulaire je souhaiterai alors que le champ case
à cocher sur l'ensemble de mes enregistrements de mon
sous-formulaire soit coché.

Si vous pouvez m'aider, merci d'avance

-----Message d'origine-----
Bonjour.

si tu la fait, elle existera.
selon le nombre et les noms des contrôles tu peux le
faire en ligne ou en

boucle. A voir.
sinon en ligne:
dans l'événement AfterUpdate de la case à cocher (nommée
Cocher1 par

exemple):
Forms!formulairePrincipal!sous_formulaire!
Cocherx.Visible = Me.Cocher1

Forms!formulairePrincipal!sous_formulaire!
Cochery.Visible = Me.Cocher1

Forms!formulairePrincipal!sous_formulaire!
Cocherz.Visible = Me.Cocher1

etc etc....
tu peut mettre = Not Me.Cocher1 au lieu de = Me.Cocher1
pour inverser le

sens.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a
écrit dans le message

de news: 1eb401c4b5d2$a4822a10$
Bonjour tout le monde,

Dans un formulaire je souhaite placer un bouton de
commande ou bien une case à cocher qui d'un simple clic
me permetterait de cocher un ensemble de cases à cocher
contenu dans les enregistrements d'un sous-formulaire.

Existe-t-il une procédure pour cela?

Merci d'avance


.



Avatar
Marcotte300
Bonjour,

L'art de bien expliquer ce que l'on souhaite, pas évident
sutout en informatique.

La solution proposée par Ilan et Raymond fonctionne,
mais...

Dans mon sous-formulaire, je n'ai qu'un seul champ de
type oui/non (case à cocher). Par contre dans ce même
sous-formulaire j'ai une ou plusieurs ligne
d'enregistrement. Et quand je clique sur la case à cocher
de mon formulaire je souhaiterai alors que le champ case
à cocher sur l'ensemble de mes enregistrements de mon
sous-formulaire soit coché.

Si vous pouvez m'aider, merci d'avance
-----Message d'origine-----
Bonjour.

si tu la fait, elle existera.
selon le nombre et les noms des contrôles tu peux le
faire en ligne ou en

boucle. A voir.
sinon en ligne:
dans l'événement AfterUpdate de la case à cocher (nommée
Cocher1 par

exemple):
Forms!formulairePrincipal!sous_formulaire!
Cocherx.Visible = Me.Cocher1

Forms!formulairePrincipal!sous_formulaire!
Cochery.Visible = Me.Cocher1

Forms!formulairePrincipal!sous_formulaire!
Cocherz.Visible = Me.Cocher1

etc etc....
tu peut mettre = Not Me.Cocher1 au lieu de = Me.Cocher1
pour inverser le

sens.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a
écrit dans le message

de news: 1eb401c4b5d2$a4822a10$
Bonjour tout le monde,

Dans un formulaire je souhaite placer un bouton de
commande ou bien une case à cocher qui d'un simple clic
me permetterait de cocher un ensemble de cases à cocher
contenu dans les enregistrements d'un sous-formulaire.

Existe-t-il une procédure pour cela?

Merci d'avance


.



Avatar
Raymond [mvp]
Bonsoir.

dans ce cas,
solution 1:
Dim Rs As DAO.Recordset
Set Rs = Me.SF1.Form.Recordset
If Rs.BOF Then Exit Sub
Do Until Rs.EOF
Rs.Edit
Rs!CaseàCocher = True
Rs.Update
Rs.MoveNext
Loop

Solution 2: (SF1 = sous-formulaire)
On Error GoTo Err_Lec
Me.SF1.SetFocus
DoCmd.GoToRecord , , acFirst
Do Until Me.SF1.Form.NewRecord
Me!SF1!CaseàCocher = True
DoCmd.GoToRecord , , acNext
Loop
Err_Lec:

plus d'autres .....
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a écrit dans le message
de news: 1ba201c4b609$5aa5c230$
Bonjour,

L'art de bien expliquer ce que l'on souhaite, pas évident
sutout en informatique.

La solution proposée par Ilan et Raymond fonctionne,
mais...

Dans mon sous-formulaire, je n'ai qu'un seul champ de
type oui/non (case à cocher). Par contre dans ce même
sous-formulaire j'ai une ou plusieurs ligne
d'enregistrement. Et quand je clique sur la case à cocher
de mon formulaire je souhaiterai alors que le champ case
à cocher sur l'ensemble de mes enregistrements de mon
sous-formulaire soit coché.

Si vous pouvez m'aider, merci d'avance
Avatar
Marcotte300
Merci

Mais dans quel évènement dois-je écrire les procédures
solution1 ou 2, parce que je suis un peu perdu.

Cordialement

-----Message d'origine-----
Bonsoir.

dans ce cas,
solution 1:
Dim Rs As DAO.Recordset
Set Rs = Me.SF1.Form.Recordset
If Rs.BOF Then Exit Sub
Do Until Rs.EOF
Rs.Edit
Rs!CaseàCocher = True
Rs.Update
Rs.MoveNext
Loop

Solution 2: (SF1 = sous-formulaire)
On Error GoTo Err_Lec
Me.SF1.SetFocus
DoCmd.GoToRecord , , acFirst
Do Until Me.SF1.Form.NewRecord
Me!SF1!CaseàCocher = True
DoCmd.GoToRecord , , acNext
Loop
Err_Lec:

plus d'autres .....
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a
écrit dans le message

de news: 1ba201c4b609$5aa5c230$
Bonjour,

L'art de bien expliquer ce que l'on souhaite, pas évident
sutout en informatique.

La solution proposée par Ilan et Raymond fonctionne,
mais...

Dans mon sous-formulaire, je n'ai qu'un seul champ de
type oui/non (case à cocher). Par contre dans ce même
sous-formulaire j'ai une ou plusieurs ligne
d'enregistrement. Et quand je clique sur la case à cocher
de mon formulaire je souhaiterai alors que le champ case
à cocher sur l'ensemble de mes enregistrements de mon
sous-formulaire soit coché.

Si vous pouvez m'aider, merci d'avance


.



Avatar
Raymond [mvp]
Tu le places dans l'événement que tu avais prévu:
Dans un formulaire je souhaite placer un bouton de
commande ou bien une case à cocher qui d'un simple clic .....
Soit sur l'événement Click du bouton ou sur l'événement AfterUpdate de la

case à cocher. S'il s'agit d'une case à cocher il faudra tester si elle est
cochée ou non et remplacer la ligne
Me!SF1!CaseàCocher = True
par

Me!SF1!CaseàCocher = Me.Caseàcocher


Me.Caseàcocher étant la case à cocher sur la formulaire principal demandant
à cocher les autres cases du sous-formulaire.

Si tu le mets sous le bouton, il faudra prévoir un autre bouton pour
décocher l'ensemble des cases (je pense)
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a écrit dans le message
de news: 16f501c4b681$7ed4acc0$
Merci

Mais dans quel évènement dois-je écrire les procédures
solution1 ou 2, parce que je suis un peu perdu.

Cordialement

-----Message d'origine-----
Bonsoir.

dans ce cas,
solution 1:
Dim Rs As DAO.Recordset
Set Rs = Me.SF1.Form.Recordset
If Rs.BOF Then Exit Sub
Do Until Rs.EOF
Rs.Edit
Rs!CaseàCocher = True
Rs.Update
Rs.MoveNext
Loop

Solution 2: (SF1 = sous-formulaire)
On Error GoTo Err_Lec
Me.SF1.SetFocus
DoCmd.GoToRecord , , acFirst
Do Until Me.SF1.Form.NewRecord
Me!SF1!CaseàCocher = True
DoCmd.GoToRecord , , acNext
Loop
Err_Lec:

plus d'autres .....
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a
écrit dans le message

de news: 1ba201c4b609$5aa5c230$
Bonjour,

L'art de bien expliquer ce que l'on souhaite, pas évident
sutout en informatique.

La solution proposée par Ilan et Raymond fonctionne,
mais...

Dans mon sous-formulaire, je n'ai qu'un seul champ de
type oui/non (case à cocher). Par contre dans ce même
sous-formulaire j'ai une ou plusieurs ligne
d'enregistrement. Et quand je clique sur la case à cocher
de mon formulaire je souhaiterai alors que le champ case
à cocher sur l'ensemble de mes enregistrements de mon
sous-formulaire soit coché.

Si vous pouvez m'aider, merci d'avance


.



Avatar
Marcotte300
Bonjour,

Merci pour la solution.
mais j'ai un autre soucis avec les enregistrements de mon
sous-formulaire.

Dans l'enregistrement N°1 de mon Form, je saisie dans mon
SForm l'article N°1, puis N°2, puis N°3. En cochant la
case dans mon Form, les cases à cocher dans les 3
enregistrements (article 1,2 et 3) de mon SForm se
cochent. pas de problème.

Par contre si dans l'enregistrement N°2 de mon Form, j'ai
dans l'un de mes enregistrements du SForm, l'article N°2,
sa case est cochée, alors qu'il ne faudrait pas.

Existe t il un moyen pour éviter cela?

J'espère bien expliquer mon problème car pas évident.

Cordialement.



-----Message d'origine-----
Tu le places dans l'événement que tu avais prévu:
Dans un formulaire je souhaite placer un bouton de
commande ou bien une case à cocher qui d'un simple
clic .....


Soit sur l'événement Click du bouton ou sur l'événement
AfterUpdate de la

case à cocher. S'il s'agit d'une case à cocher il faudra
tester si elle est

cochée ou non et remplacer la ligne
Me!SF1!CaseàCocher = True
par

Me!SF1!CaseàCocher = Me.Caseàcocher


Me.Caseàcocher étant la case à cocher sur la formulaire
principal demandant

à cocher les autres cases du sous-formulaire.

Si tu le mets sous le bouton, il faudra prévoir un autre
bouton pour

décocher l'ensemble des cases (je pense)
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a
écrit dans le message

de news: 16f501c4b681$7ed4acc0$
Merci

Mais dans quel évènement dois-je écrire les procédures
solution1 ou 2, parce que je suis un peu perdu.

Cordialement

-----Message d'origine-----
Bonsoir.

dans ce cas,
solution 1:
Dim Rs As DAO.Recordset
Set Rs = Me.SF1.Form.Recordset
If Rs.BOF Then Exit Sub
Do Until Rs.EOF
Rs.Edit
Rs!CaseàCocher = True
Rs.Update
Rs.MoveNext
Loop

Solution 2: (SF1 = sous-formulaire)
On Error GoTo Err_Lec
Me.SF1.SetFocus
DoCmd.GoToRecord , , acFirst
Do Until Me.SF1.Form.NewRecord
Me!SF1!CaseàCocher = True
DoCmd.GoToRecord , , acNext
Loop
Err_Lec:

plus d'autres .....
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a
écrit dans le message

de news: 1ba201c4b609$5aa5c230$
Bonjour,

L'art de bien expliquer ce que l'on souhaite, pas
évident


sutout en informatique.

La solution proposée par Ilan et Raymond fonctionne,
mais...

Dans mon sous-formulaire, je n'ai qu'un seul champ de
type oui/non (case à cocher). Par contre dans ce même
sous-formulaire j'ai une ou plusieurs ligne
d'enregistrement. Et quand je clique sur la case à
cocher


de mon formulaire je souhaiterai alors que le champ case
à cocher sur l'ensemble de mes enregistrements de mon
sous-formulaire soit coché.

Si vous pouvez m'aider, merci d'avance


.




.




Avatar
Raymond [mvp]
Bonjour.

Tu n'as jamais parlé de conditions de cochage. quelles sont ces conditions
pour que la case soit cochée ou non ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a écrit dans le message
de news: 0a3c01c4b6ae$eb58da10$
Bonjour,

Merci pour la solution.
mais j'ai un autre soucis avec les enregistrements de mon
sous-formulaire.

Dans l'enregistrement N°1 de mon Form, je saisie dans mon
SForm l'article N°1, puis N°2, puis N°3. En cochant la
case dans mon Form, les cases à cocher dans les 3
enregistrements (article 1,2 et 3) de mon SForm se
cochent. pas de problème.

Par contre si dans l'enregistrement N°2 de mon Form, j'ai
dans l'un de mes enregistrements du SForm, l'article N°2,
sa case est cochée, alors qu'il ne faudrait pas.

Existe t il un moyen pour éviter cela?

J'espère bien expliquer mon problème car pas évident.

Cordialement.
Avatar
Marcotte300
Bonjour,

Désolé, une petite erreur d'inattention de ma part.
Votre solution proposée fonctionne.

Merci encore.


-----Message d'origine-----
Bonjour.

Tu n'as jamais parlé de conditions de cochage. quelles
sont ces conditions

pour que la case soit cochée ou non ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Marcotte300" a
écrit dans le message

de news: 0a3c01c4b6ae$eb58da10$
Bonjour,

Merci pour la solution.
mais j'ai un autre soucis avec les enregistrements de mon
sous-formulaire.

Dans l'enregistrement N°1 de mon Form, je saisie dans mon
SForm l'article N°1, puis N°2, puis N°3. En cochant la
case dans mon Form, les cases à cocher dans les 3
enregistrements (article 1,2 et 3) de mon SForm se
cochent. pas de problème.

Par contre si dans l'enregistrement N°2 de mon Form, j'ai
dans l'un de mes enregistrements du SForm, l'article N°2,
sa case est cochée, alors qu'il ne faudrait pas.

Existe t il un moyen pour éviter cela?

J'espère bien expliquer mon problème car pas évident.

Cordialement.




.