IMPOSSIBLE DE FILTRER LES DONNEES D'UN FORMULAIRE VERS UN ETAT

Schnee067 Messages postés 14 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 9 février 2010 - 2 févr. 2010 à 04:12
Schnee067 Messages postés 14 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 9 février 2010 - 9 févr. 2010 à 00:29
Bonjour,

Je viens vers vous pour vous demander un peu d'aide.

J'ai créé un formulaire où je rempli les champs. A la fin de la saisie quand je clic sur filtrer j'ai bien l'ensemble de mes enregistrements filtrés qui sont dans ma liste des résultats.

Maintenant j'aimerai créer un bouton qui me permet de prendre les résultats filtrés et d'ouvrir un état avec ceux-ci pour l'imprimer.

J'ai trouvé plein de code VBA sur google et le site, mais aucun ne va, mis à part celui-là, mais il ne filtre rien et m'affiche à chaque fois l'ensemble de mes données.

Private Sub Créer_Un_Etat_Click()

DoCmd.OpenReport "Etat - Requête Table Données Principales Enregistrement", acViewPreview, "CléDeL'Etat=[Forms]![Form - Recherches Multicritères Enregistrement]![N°]"

End Sub

Je précise que j'ai également déjà essayé de mettre dans la requête sous ma clé principale dans le critère where:
[Forms]![Form - Recherches Multicritères Enregistrement]![N°]
Mais ceci a simplement provoqué une erreur.

Pouvez-vous m'aider, merci d'avance.

P.S Je suis sous ACCESS 2007.

6 réponses

Schnee067 Messages postés 14 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 9 février 2010
2 févr. 2010 à 17:53
Je pense avoir un problème avec mon numéro auto.
Les résultats de ma requête est affiché dans une zone de liste de mon formulaire, mais d'après l'ensemble des tutos que j'ai lu depuis cette nuit, je constate que je dois faire appel à ce numéro auto dans mon form.

Donc question, d'après-vous comment puis-je faire pour récupérer mon numéro auto qui est simplement affiché dans une zone de liste.
Pensez-vous que je suis sur la bonne voie ????
0
Schnee067 Messages postés 14 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 9 février 2010
2 févr. 2010 à 20:22
Je n'ai toujours pas réussi à régler mon problème.

Je donne quelques précisions:

J'ai fais une requête par VBA qui envoi l'ensemble des informations à une liste de résultat dans un formulaire et ce grâce à la commande rawsource.
Voici le code:

'Le Texte Suivant Met En Exécution Une Requête. - Mois En Cours.
Forms![Form - Recherches Multicritères Enregistrement].[LstRésultat].RowSource = "SELECT [Données Principales Enregistrement].[N°], [Données Principales Enregistrement].[JOUR DU TRAVAIL], [Données Principales Enregistrement].[Nom Des Employeurs], [Données Principales Enregistrement].[HORAIRE DEBUT], [Données Principales Enregistrement].[HORAIRE FIN], [Données Principales Enregistrement].[INTEGRATION CUMUL HEURE PAR SEANCE], [Données Principales Enregistrement].[TYPE DE TRAVAIL], [Données Principales Enregistrement].[VEHICULE UTILISE], [Données Principales Enregistrement].[REMARQUES] " & _
         "FROM [Données Principales Enregistrement] " & _
         "WHERE (((Month([JOUR DU TRAVAIL]))=Month(Now()))) " & _
         " AND (([Données Principales Enregistrement].[VEHICULE UTILISE])=[FCmbVéhicule]) & NZ ('') " & _
         " AND (([Données Principales Enregistrement].[REMARQUES])= [FCmbRemarques]) & NZ ('') " & _
         " AND (([Données Principales Enregistrement].[TYPE DE TRAVAIL].Value)=[FCmbTypeT]) & NZ ('') " & _
         " AND (([Données Principales Enregistrement].[Nom Des Employeurs])=[FCmbEmployeur]) & NZ ('') " & _
         " OR (([Données Principales Enregistrement].[TYPE DE TRAVAIL].Value)=[CmbTypeT1]) " & _
         " OR (([Données Principales Enregistrement].[TYPE DE TRAVAIL].Value)=[CmbTypeT2]) " & _
         " OR (([Données Principales Enregistrement].[Nom Des Employeurs])=[CmbEmployeur1]) " & _
         " OR (([Données Principales Enregistrement].[Nom Des Employeurs])=[CmbEmployeur2]) " & _
         " OR (([Données Principales Enregistrement].[Nom Des Employeurs])=[CmbEmployeur3]) " & _
         "ORDER BY [Données Principales Enregistrement].[JOUR DU TRAVAIL], [Données Principales Enregistrement].[Nom des Employeurs], [Données Principales Enregistrement].[HORAIRE DEBUT];"


Cette requête me donne donc les différents résultats des champs choisis. J'ai fais la même chose avec d'autres requêtes pour avoir le choix pour l'année en cours, l'année précédente, le mois en cours, le mois précédent et le choix entre deux dates précises.

Je n'arrive pas à joindre une copie d'écran du formulaire avec la liste des résultats, donc si quelqu'un le veux par mail privé, aucun soucis.


[b]Par contre, ce que je n'arrive pas à faire il s'agit de lorsque je clique sur le bouton Etat ce dernier doit s'ouvrir avec simplement les résultats filtrés.
Pour l'heure il s'ouvre avec tous les résultats.
Comment peux t-on faire pour indiquer le chemin d'accès de la clé primaire [N°] se trouvant dans la liste de résultat [LstRésultat] pour ouvrir cet état avec les enregistrements filtrés./b
Voici le code actuel:

Private Sub Créer_Un_Etat_Click()
DoCmd.OpenReport "Etat - Requête Table Données Principales Enregistrement", acViewPreview, "Forms!Form - Recherches Multicritères Enregistrement!LstRésultat"
End Sub


Donc comme dit, ce code permet d'ouvrir l'état avec l'ensemble des résultats, et ce peu importe le nombre de résultat présent sur le formulaire de recherches.

Merci de bien vouloir me donner la solution car je vais devenir dingue.....
0
Schnee067 Messages postés 14 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 9 février 2010
3 févr. 2010 à 13:39
Un petit UP

Ma question est tellement compliquée ????

J'espère qu'un géni va pouvoir me répondre.

Entre temps j'ai essayé de créer autant de bouton "Créer un Etat" qu'il y a de requête. Cela fonctionne partiellement.
En effet, d'après ce que je vois, la condiction WHERE dans le générateur d'expression est limité, donc il n'y a pas tous les champs qui rentre.
En ce qui concerne VBA, j'ai essayé mais idem il refuse d'aller à la ligne pour poursuivre la commande where et sur une ligne il l'ignore!.

Donc voilà où j'en suis.
Aidez-moi SVP..............
0
Schnee067 Messages postés 14 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 9 février 2010
3 févr. 2010 à 13:48
Quelqu'un peu m'expliquer où est mon erreur dans ce code ?
Merci

Private Sub Créer_Un_Etat___Année_En_Cours_Click()

DoCmd.OpenReport "Etat - Requête Table Données Principales Enregistrement", acViewPreview, " & _
" WHERE (((Year([JOUR DU TRAVAIL])) = Year(Now()))) " & _
" AND (([Données Principales Enregistrement].[VEHICULE UTILISE])=[FCmbVéhicule]) & NZ ('') " & _
         " AND (([Données Principales Enregistrement].[REMARQUES])= [FCmbRemarques]) & NZ ('') " & _
         " AND (([Données Principales Enregistrement].[TYPE DE TRAVAIL].Value)=[FCmbTypeT]) & NZ ('') " & _
         " AND (([Données Principales Enregistrement].[Nom Des Employeurs])=[FCmbEmployeur]) & NZ ('') " & _
         " OR (([Données Principales Enregistrement].[TYPE DE TRAVAIL].Value)=[CmbTypeT1]) " & _
         " OR (([Données Principales Enregistrement].[TYPE DE TRAVAIL].Value)=[CmbTypeT2]) " & _
         " OR (([Données Principales Enregistrement].[Nom Des Employeurs])=[CmbEmployeur1]) " & _
         " OR (([Données Principales Enregistrement].[Nom Des Employeurs])=[CmbEmployeur2]) " & _
         " OR (([Données Principales Enregistrement].[Nom Des Employeurs])=[CmbEmployeur3]) " & _
         "[WindowMode As AcWindowMode = acDialog];"
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Schnee067 Messages postés 14 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 9 février 2010
4 févr. 2010 à 13:21
Re-Bonjour,

Personne ne veut m'aider ?????

Ce serait dommage que je ne puisse pas terminer ma BD.

SVP........
0
Schnee067 Messages postés 14 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 9 février 2010
9 févr. 2010 à 00:29
Bonjour à tous, cela fait quelques jours que je cherche, mais je n'ai toujours pas réussi à régler mon problème.

Je suis vraiment coincé. Il faut absolument que je puisse dire à mon état d'aller chercher les mêmes informations dans le champs [LstRésultat] de mon formulaire.

Comme dis plus haut, je sais que normalement il suffit de lui indiquer la clé primaire, mais il ne l'a prend pas en compte [N°].
Je me répette, mais il s'agit d'une zone de liste où la requête génère 9 colonnes. La clé primaire est la première.
Donc pouvez-vous me donner la suite de cette ligne de commande:
[b]Forms![Form - Recherches Multicritères Enregistrement]![LstRésultat].......... Je pense que ici je devrais mettre ![N°]
Mais cela ne fonctionne pas, il affiche tous les enregistrements./b
SVP Aidez-moi.............
0