Aide requete/formulaire

Fermé
fleurbleumv - 7 déc. 2014 à 19:41
 Tessel75 - 7 déc. 2014 à 23:31
Bonjour,

Un peu bloquée dans ce que je veux faire
J'ai une requête de sélection qui me permet de lister des éléments d'une première tables (plusieurs critères de sélection). j'affiche la liste dans un formulaire
je voudrais ajouter une case à cocher ou oui/non pour chaque ligne permettant de toper certaines lignes (ou toutes) pour constituer un lot . (cocher 1 ligne ou tout cocher/décocher )
Pour les lignes sélectionnées mettre à jour une nouvelle table
je ne sais pas comment faire
Une idée ?
Merci de votre aide

1 réponse

Bonjour,
Si j'ai bien compris ta question et pour garder ta procédure qui n'est pas la plus facile, il faut mettre tes cases à cocher (voir onglet Création, Icône Contrôles, et les considérer comme indépendantes, càd qu'elles ne sont rattachées à aucun champ d'aucune table. Ensuite tu crées des contrôles masqués correspondant à chacun des champs sur lesquels ta sélection est fondée (ContrôleA2, ContrôleB2, etc) et qui se remplissent à chaque fois que tu coches une case (Avec la procédure VBA "If CaseàCocherA=-1 then ContrôleA2 = ContrôleA1", à affecter à la propriété "Après Mise à Jour". Et enfin, après tu construits ta 2ème requête sur la base de la 1ère, càd que ta 2ème requête utilise la 1ère comme tu l'as fait avec ta table initiale pour construire ta 1ère requête, et enfin tu entres comme critère pour chacun des champs la valeur prise par les contrôles ContrôleA2, ContrôleB2, etc.

Mais il me semble, si cela est possible dans ta construction, qu'il aurait été beaucoup plus simple de construire ton formulaire de sélection comme un formulaire indépendant càd sans requête sous-jacente, mais dont chaque contrôle était basé sur une requête reprenant les critères souhaités. Il suffit alors d'avoir une succession de requêtes "en cascade" pour sélectionner tous les critères que tu voulais. A la fin il suffit d'avoir une dernière requête qui prend pour critères les valeurs des champs. (Juste une précision technique, il faut que les critères de ta requête soient construits sur la base de "comme Formulaires!LeNomDuFormulaire!ContrôleA & "*"", pour les cas où le critère reste vide et qu'il ramène toutes les occurrences du champ correspondant). (Pour les critères en cascade, voir: http://www.commentcamarche.net/forum/affich-31114909-besoin-d-aide-liste-deroulante-en-cascade-dans-access)
En espérant ne pas avoir été trop abscons.
Bonne suite
0