Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/11/2011, 16h57   #1
Invité régulier
 
Inscription : novembre 2011
Messages : 14
Détails du profil
Informations personnelles :
Localisation : Pays-Bas

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : novembre 2011
Messages : 14
Points : 5
Points : 5
Par défaut Listbox et critere de requete

Bonjour a tous,

J'ai cree un formulaire de recherche qui fonctionne tres bien (je peux entrer plein de criteres et tout et tout). Afin de facilite la lecture des resultats de cette recherche, je les fais afficher dans un nouveau formulaire contenant une listbox dont le code SQL ne va chercher sur ma premiere requete que le modele et le supply point, puis l’utilisateur n’a qu’a double-cliquer sur l’entree qui l’interesse pour avoir plus de details, la requete fonctionnant sur le numero de modele.

Mais j’ai un probleme avec les doublons dans les numeros de modele. En effet certain de ces numeros sont repris par plusieurs supply points, et en double-cliquant dessus j’obtiens donc tous les resultats correspondant au modele, et pas seulement celui sur lequel j’ai double clique.

J’aimerais donc pouvoir dans ma requete qui va chercher les details, lui dire de prendre comme critere le numero de modele (ce que j’arrive a faire facilement) ET le supply point (pour eliminer ce probleme de doublons). Mais je n’ai aucune idee de comment aller chercher deux colonnes de ma listbox dans ma requete SQL.

Est-ce que c’est faisable ? Si oui, quelqu’un pourrait-il m’aiguiller vers une solution (qui a mon avis ne doit pas etre trop compliquee mais je n’arrive vraiment pas trouver mon bonheur sur les differents forums …) ?

Merci d’avance pour votre aide !
Bourbon Kid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2011, 19h30   #2
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
bonsoir,

Citation:
Envoyé par Bourbon Kid Voir le message
Mais je n’ai aucune idee de comment aller chercher deux colonnes de ma listbox dans ma requete SQL.
dans la FAQ peut-être:
Comment récupérer la valeur d'une colonne de la ligne sélectionnée dans une zone de liste ?
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2011, 09h20   #3
Invité régulier
 
Inscription : novembre 2011
Messages : 14
Détails du profil
Informations personnelles :
Localisation : Pays-Bas

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : novembre 2011
Messages : 14
Points : 5
Points : 5
Bonjour f-leb et merci de ta reponse,

J'avais deja trouve ca dans la FAQ, mais Access me renvoi un " Invalid Bracketing of name [Forms]![F-SearchResults]![LstResults.column(2)] " lorsque j'essai d'executer la requete.
J'avais oublie de le preciser dans mon premier message, desole

Et j'obtiens un non moins magnifique " Undefined function '[Forms]![F-SearchResults]![LstResults].column' in expression " lorsque je sors le .column des crochets ...

Je suppose donc que je ne l'utilise pas correctement (j'en suis meme a peu pres sur ...). Pourrais-tu preciser comment utiliser ce ".column()" stp ?
Bourbon Kid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 11h40   #4
Invité régulier
 
Inscription : novembre 2011
Messages : 14
Détails du profil
Informations personnelles :
Localisation : Pays-Bas

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : novembre 2011
Messages : 14
Points : 5
Points : 5
Re,

J'ai essaye ceci au Load de mon formulaire :

Code :
1
2
3
4
Private Sub Form_Load()
Dim SP As String
SP = Me.LstResults.Column(2)
End Sub
Puis j'ai ajoute dans ma requete le fait d'aller chercher ce critere SP pour le Supply Point, mais une fois de plus ce n'est pas la bonne solution. Je n'ai vraiment pas l'habitude de travailler avec Access donc si quelqu'un pouvait m'aiguiller ca me serait d'une grande aide, merci.
Bourbon Kid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2011, 11h58   #5
Invité régulier
 
Inscription : novembre 2011
Messages : 14
Détails du profil
Informations personnelles :
Localisation : Pays-Bas

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : novembre 2011
Messages : 14
Points : 5
Points : 5
Bonjour à tous,

Je n'ai pas eu l'occasion de retravailler ma base de données depuis quelques jours mais je m'y suis remis depuis ce matin et je rencontre toujours la même difficulté.

N'y a-t-il pas une âme charitable aui pourrait me dire comment utiliser ce .column() svp ? Au moins m'indiquer si je peux l'utiliser dans mon code SQL ou si je dois passer par du VBA.

Merci d'avance pour vos réponses.
Bourbon Kid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2011, 13h15   #6
Membre confirmé
 
Homme
Développeur amateur
Inscription : mars 2009
Messages : 176
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Maroc

Informations professionnelles :
Activité : Développeur amateur

Informations forums :
Inscription : mars 2009
Messages : 176
Points : 255
Points : 255
Bonjour,

Il faut passer par une querydef dont la chaine SQL contiendra le paramétre Me.LstResults.Column(2).
Si ton formulaire de recherche est basé sur une requête QBE , une autre solution simple consiste à récupérer le paramétre dans un contrôle du formulaire et appeler ensuite ce dernier dans l'argument critère de la requête .

Cordialement
reedy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2011, 13h27   #7
Invité régulier
 
Inscription : novembre 2011
Messages : 14
Détails du profil
Informations personnelles :
Localisation : Pays-Bas

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : novembre 2011
Messages : 14
Points : 5
Points : 5
Par défaut MAJ

Merci reedy, je me renseigne sur les QueryDef et je te dis si ça a marché !

MAJ:

Bon, en fait j'ai rien compris aux QueryDef, mais c'est pas grave j'ai trouvé une autre solution toute simple :

J'ai créé une TextBox affichant la valeur de la colonne de ma ListBox dont je voulais récupéré la valeur, puis j'ai ajouté un critère à ma requête qui correspond à ma TextBox. Restait plus qu'à cacher la TextBox et le tour est joué

Merci à tous en tout cas pour votre aide.
Bourbon Kid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/12/2011, 19h10   #8
Membre confirmé
 
Homme
Développeur amateur
Inscription : mars 2009
Messages : 176
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Maroc

Informations professionnelles :
Activité : Développeur amateur

Informations forums :
Inscription : mars 2009
Messages : 176
Points : 255
Points : 255
Bonjour,

C'est ce que je t'ai proposé comme deuxième solution.
Bonne continuation.

cordialement
reedy est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h24.


 
 
 
 
Partenaires

Hébergement Web