Vba requete sql et combo box

Résolu
cs_lolodero Messages postés 21 Date d'inscription samedi 24 mai 2008 Statut Membre Dernière intervention 20 février 2009 - 10 févr. 2009 à 07:51
cs_lolodero Messages postés 21 Date d'inscription samedi 24 mai 2008 Statut Membre Dernière intervention 20 février 2009 - 10 févr. 2009 à 11:10
salut a tous!

alors je vous explique, g un formulaire avec plusieur combo box, qui sont généré par des requètes.
ensuite avec les champs selectionné, les valeurs entre dans une requète et remplisse une listbox.

Mais, c champs ne sont pas forcément rempli, g mis en place des if mé sa ne marche pas?
je vous montre mon code, vous allez mieu comprendre:
Private Sub refresh_query()
Dim SQL As String


SQL = "SELECT CLIENT.NomClient, CLIENT.PrenomClient, SOCIETE.NomSoc, COURS.NomCours, NIVEAU.NomNiveau, VERSION.IDVersion, FORMATEUR.NomFormateur " & _
"FROM SOCIETE, CLIENT, PRENDRE, COURS, NIVEAU, VERSION, ENSEIGNER, FORMATEUR, AVOIR " & _
"WHERE SOCIETE.IDSoc = CLIENT.IDSoc " & _
"AND CLIENT.IDClient = PRENDRE.IDClient " & _
"AND PRENDRE.IDCours = COURS.IDCours " & _
"AND COURS.IDVersion = VERSION.IDVersion " & _
"AND VERSION.IDVersion = AVOIR.IDVersion " & _
"AND AVOIR.IDNiveau = NIVEAU.IDNiveau " & _
"AND COURS.IDCours = ENSEIGNER.IDCours " & _
"AND ENSEIGNER.IDFormateur = FORMATEUR.IDFormateur "


If Me.cbonomcours.Value > 0 Then
    SQL = "AND COURS!NomCours= '" & Me.cbonomcours & "' "
End If
If Me.cboidclient.Value > 0 Then
    SQL = "AND CLIENT!IDClient= '" & Me.cboidclient & "' "
End If


Me.lstrecherche.RowSource = SQL
Me.lstrecherche.Requery


Voila, quelqu'un a une idée?svp

4 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
10 févr. 2009 à 09:26
gaffe, tu écrases ta variable SQL...

If Me.cbonomcours.Value > 0 Then
SQL = SQL & " AND COURS!NomCours= '" & Me.cbonomcours & "' "
End If
If Me.cboidclient.Value > 0 Then
SQL = SQL & " AND CLIENT!IDClient= '" & Me.cboidclient & "' "
End If
3
hebus16 Messages postés 80 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 2 octobre 2009 1
10 févr. 2009 à 09:26
oui une idée comme ça ^^
Avec ceci je suis sur que ta requête sera plus cohérente pour Access :p

If Me.cbonomcours.Value > 0 Then
    SQL =  SQL & " AND COURS!NomCours= '" & Me.cbonomcours & "' "
End If
If Me.cboidclient.Value > 0 Then
    SQL = SQL & " AND CLIENT!IDClient= '" & Me.cboidclient & "' "
End If

petite erreur d'inattention : p

Par contre n'hésite pas à mettre les messages d'erreurs dans tes posts stp ça aide pas mal pour avoir une réponse rapide

Allez bonne continuation
3
hebus16 Messages postés 80 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 2 octobre 2009 1
10 févr. 2009 à 09:29
Rhooo grillé de 16 secondes ^^
0
cs_lolodero Messages postés 21 Date d'inscription samedi 24 mai 2008 Statut Membre Dernière intervention 20 février 2009
10 févr. 2009 à 11:10
OK merci bocoup!
javé pas remarqué cette erreure.
Donc biensur mintenan sa marche!

merci encor
0
Rejoignez-nous