[access] qui est ce qui s'y connait??

Résolu/Fermé
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 - 25 mai 2009 à 08:38
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 - 3 juin 2009 à 07:20
Bonjour, je vais faire simple comment filtrer et/ou tout sélectionner grâce à une requête(filtre et sélection sur la même table évidemment)?

Merci de me répondre

33 réponses

yg_be Messages postés 22744 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 1 mai 2024 1 477
25 mai 2009 à 08:41
Si tu nous donnes le nom de ta table, les noms et types des colonnes, et ce sur quoi tu souhaite filtrer, cela nous permettrait de te donner un exemple...

sinon :
pour tout sélectionner : select * from table
pour filter : select * from table where column > valeur
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 08:46
je ne vais pas me plaindre quelqu'un reponds^^

bon donc je résume

j'ai une liste déroulante dans un formulaire je sélectionne des noms à partir de la table effectif ( qui ne comporte qu'une colonne comprenant des noms) j'ai la possibilité de ne sélectionné qu'un nom ou alors tous pour cela le contenu de ma liste déroulante est :SELECT [R_effectif].[Nom] FROM [R_effectif] UNION SELECT "<<TOUS>>" AS Nom FROM [R_effectif] ORDER BY Nom;

alors pour sélectionner qu'un seul nom ça va mais je ne sais pas comment faire pour tous les sélectionnés

voici ma requête de sélection pour sélectionné qu'un seul nom [forms]![F_Recherche_total]![Intervenant]
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 09:22
plus personne ne s'y connais ou alors je parle le chinois ou encore vous ne savez pas plus que moi comment faire^^
0
yg_be Messages postés 22744 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 1 mai 2024 1 477
25 mai 2009 à 09:32
... ou alors tu ferais mieux de dire merci ou lieu de ne pas te plaindre de l'aide que tu reçois ...
0
yg_be Messages postés 22744 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 1 mai 2024 1 477
25 mai 2009 à 09:33
tu ne sais pas comment faire pour tout selectionner dans une liste déroulante, ou bien tu ne sais pas comment utiliser cette sélection ?
0

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

Posez votre question
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 09:36
tout d'abord merci et désoler de mon attitude

et effectivement je ne sais pas comment tout sélectionné
je pense que je dois faire intervenir une condition mais je ne sais pas ou et comment
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 09:39
sincerment désoler de mon attitude mais je suis sur ce problème depuis mardi dernier je n'ai trouvé personne pour m'aider depuis ce jour et j'ai réelement besoin de ton aide

je suis en stage et je dois à tout prix résoudre ce problème pour avancer

de plus je suis débutant en acces et vba
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 10:13
je remonte le sujet j'ai vraiment et réellement besoin d'aide
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 11:23
svp aidez moi
0
yg_be Messages postés 22744 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 1 mai 2024 1 477
25 mai 2009 à 12:39
Suggestion : si l'utilisateur ne marque rien dans ta liste, tu fais comme si tout était sélectionné.

Tu devrais me donner plus de détails sur comment tu exploites la sélection (quand un seul nom est sélectioné), afin que je puisse suggérer comment l'adapter...
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 13:41
en fait au tout début c'était comme ça:

j'ai un formulaire F_recherche_total qui contient une liste déroulante avec le contenu suivant : SELECT [R_effectif].[Nom] FROM [R_effectif];
elle est donc remplis des noms qui se trouvent dans la requête R_effectif

lorsque je clique sur un nom par exemple BLANC Thierry le formulaire envoie les données vers ma requête associé qui est R_recherche_total

cette requête reçois donc BLANC Thierry, puis dans celle ci je fait une sélection : [forms]![F_Recherche_total]![Intervenant]; qui va permette de chercher BLANC Thierry et de sélectionner dans la table Interventions, tout les tuples dont l'intervenant est BLANC Thierry

Donc pour ce qui est d'un sélection tout marche correctement

en revanche je souhaite maintenant que ma requête puisse traiter tout les intervenants, c'est à dire que je puisse traiter tout les noms

j'espère que j'ai été un peut plus clair

en tout cas merci de ton aide yg_be
0
yg_be Messages postés 22744 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 1 mai 2024 1 477
25 mai 2009 à 14:18
comment fais tu l'envoi suivant ? "formulaire envoie les données vers ma requête associé qui est R_recherche_total"

Peux-tu m'envoyer le texte de la requête R_recherche_total ?

Comment fais-tu "fait une sélection : [forms]![F_Recherche_total]![Intervenant]; "

Il y a tellement de méthodes differentes possibles que je dois mieux comprendre comment tu fais pour adapter comme tu veux.

Je pense que si tu ne sélectionne rien, la requête peut recevoir NULL ou "" au lieu "BLANC Thierry". La requête pourrait être modifiée pour traiter cette situation de façon à tout sélectionner.

Si tu pouvais envoyer ton fichier mdb via sendit, par exemple, cela faciliterait la communication entre nous.
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 14:51
je suis sincerment navré si mon vocabulaire te pose problème je débute et je ne suis donc pas à même de comprendre parfaitement le logiciel Access, c'est pourquoi je conçois tout à fait que cela peut paraître flou

cependant je me suis pencher vers une autre solution qui à mon avis reste la meilleur
VBA

voici le code que je viens de commencer me permettant de sélectionné tout les champs puis de l'envoyé pour qu'elle soit traiter

Private Sub pointeur_Click()
Dim valeur As String
Dim truc As DAO.Recordset
Dim requete As String
valeur = pointeur.Value
If (valeur = "<<TOUS>>") Then
requete = "SELECT * FROM [R_effectif];"
DoCmd.RunSQL requete
End If
End Sub

voila j'ai fait ça le problème est que je ne peux pas utiliser runsql car je fait une sélection, il faut que j'utilise recordset

de plus ce que je veux faire maintenant c'est tout envoyer à ma requête R_recherche_total

qui fonctionne de la façon suivante:

je sélectionne dans un formulaire : un ou des noms, une date de début une date de fin, une ligne(de production), un équipement et un sous équipement une fois tout cela sélectionné j'exécute une macro qui elle exécute une requête qui permet de faire une sélection en fonction des paramètres que l'utilisateur à initialisé dans le formulaire une foi la requête traiter j'ouvre un état qui m'affiche le résultat

avec mon recordset ( dont je ne sais toujours pas à quoi ça sert) je souhaite envoyer comme paramètres tout les noms à ma requête R_recherche_total

peux tu m'aider?

en espérant avoir été aussi clair que possible
0
yg_be Messages postés 22744 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 1 mai 2024 1 477
25 mai 2009 à 15:14
Je pense qu'il n'est pas utile d'utiliser un recordset, ni de passer par une requête.
Un recordset te permet d'acceder aux données à partir de ton programme VBA.

Ce que tu veux faire, c'est ouvrir un sous formulaire en lui donnant le critère de sélection.

Dans ton VBA, tu peux réaliser cela en faisant :
DoCmd.OpenForm "formulaire", , , "intervenant = "BLANC Thierry""
ou bien
DoCmd.OpenForm "formulaire", , , ""

Pour modifier la requete associée à un formulaire :
me.formulaire.rowsource="SELECT * FROM [R_effectif]"
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 15:22
attends attends la je n'y suis plus pourrais tu me re-expliqué car je ne comprends pas désoler c'est pas de la mauvaise volonté mais je comprend plus je suis embrouillé
que dois je faire sur le vba ouvrir un sous formulaire ou le créer? qu'est ce qu'un sous formulaire que va t il faire à quoi va t il ressembler et surtout comment (avec la requête de sélection total que tu as mis) va t il agir sur ma requête R_recherche_total?

autant de question que je me pose car je ne comprend pas les tenants et les aboutissants de ta solution

désoler de mon manque d'expérience mais je suis content d'en apprendre autant avec toi
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 15:31
il me met une erreur :

erreur de compilation :

membre de méthode ou de données introuvable

cela viens t-il du fait que j'exécute le code lorsque je click sur élément de ma zone de liste (=que l'événement se situe au niveau d'un click sur la zone de liste déroulante) ou alors viens t il du fait qu'il souhaite ouvrir un formulaire F_ssrecherche_total qui n'existe pas?^^

j'en peux plus de ce problème je crack c'est horrible depuis mercredi dernier j'ai tout essayé

enfin bon je suis très heureux d'être tomber sur toi yg_be
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 15:40
je viens de saisir une de tes informations crucial je pense le test pour la sélection de tout les noms marche donc si j'ajoute ta commande qui permet de modifier une requête cela pourrait donner:

Dim valeur As String
valeur = pointeur.Value
If (valeur = "<<TOUS>>") Then
Me.F_Recherche_total.RowSource = "SELECT * FROM [R_effectif]"
End If

non?

problème c'est qu'il me met toujours la même erreur comprend pas pourquoi ce formulaire existe
0
yg_be Messages postés 22744 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 1 mai 2024 1 477
25 mai 2009 à 15:56
Sur quelle ligne de code se produit l'erreur ?
Laisse l'éditeur de programme ouvert pendant que tu testes, comme cela il te montrera où est l'erreur.
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
25 mai 2009 à 18:59
désoler de répondre si tard mais la j'ai finis ma journée de stage donc ...^^

l'erreur se produit sur la ligne
Me.F_Recherche_total.RowSource = "SELECT * FROM [R_effectif]"
et il me surligne l'item F_Recherche_total.RowSource
0
yg_be Messages postés 22744 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 1 mai 2024 1 477
25 mai 2009 à 20:19
F_Recherche_total, c'est bien le nom du sous formulaire qui va contenir le résultat de la sélection ? Ce n'est pas le nom du formulaire principal ?
0
DarkAurora Messages postés 417 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 21 janvier 2013 27
26 mai 2009 à 07:02
ah non pas du tout c'est le nom de ma requête... dsl, mais qu'est ce qu'un sous formulaire? le code que tu m'a donnée me permet il de créer ce sous formulaire? cependant l'erreur se produisais déjà alors que j'avais recopier le code complet que tu m'avais envoyé
0