cherie_cheri
Messages postés36Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention16 août 2007
-
18 juil. 2007 à 11:13
cs_ptitanic
Messages postés12Date d'inscriptionsamedi 14 janvier 2006StatutMembreDernière intervention 9 août 2007
-
9 août 2007 à 15:19
Bonjour,
je me permet de venir vous déranger, car j'ai un petit problème.
J'ai un formulaire access avec une zone de choix. Suivant mon choix (1 ou 2) je dois affecter une requete a un sous formulaire (fille1). Mais le problème c'est que je ne sais pas faire cette affectation en VBA.
Voici mon code pour le moment :
<CODE>
Private Sub cmdValider_Click()
'j'affecte les dates pour le traitement de la requete
If choixDate.Value = 1 Then
Req = "select * from woa where date_emission >= me.debut"
Set MaTable = CurrentDb.OpenRecordset(Req, dbOpenDynaset)
'affectation de ma requete req comme donnée source du sous formulaire
mon problème
Else
Req = "select * from woa where date_emission between me.deb and me.fin"
Set MaTable = CurrentDb.OpenRecordset(Req, dbOpenDynaset)
'affectation de ma requete req comme donnée source du sous formulaire
mon problème
End If
End Sub
<CODE>
Dans l'attente de vos réponses, je vous remercie d'avance.
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 18 juil. 2007 à 12:05
Je n'y connais pas grand chose non plus aux formulaires et sous-formulaire. Par contre la requête devrait, je pense, être modifiée au niveau des apostrophes et peut-être aussi y rajouter des dièses
Req = "select * from woa where date_emission >=" & me.debut
ou
Req = "select * from woa where date_emission >=#" & me.debut & "#"
cherie_cheri
Messages postés36Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention16 août 2007 19 juil. 2007 à 11:12
oui oui ca c'est fait..
j'avais juste écrit une requete vite fais. Après pas de dièse car dans la table avec laquelle je travail, tout les champs sont au format texte
ce qui me pose le plus de problème c'est l'affectation d'une requete a un sous formulaire.
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_ptitanic
Messages postés12Date d'inscriptionsamedi 14 janvier 2006StatutMembreDernière intervention 9 août 2007 3 août 2007 à 11:10
Solution moins barbare :
<CODE>
Private Sub cmdValider_Click()
'j'affecte les dates pour le traitement de la requete
If choixDate.Value = 1 Then
Req = "select * from woa where date_emission >= me.debut"
Set MaTable = CurrentDb.OpenRecordset(Req, dbOpenDynaset)
'affectation de ma requete req comme donnée source du sous formulaire
mon problème
"nomSousFormulaire".Form.RecordSource = MaTable
Else
Req = "select * from woa where date_emission between me.deb and me.fin"
Set MaTable = CurrentDb.OpenRecordset(Req, dbOpenDynaset)
'affectation de ma requete req comme donnée source du sous formulaire
mon problème
"nomSousFormulaire".Form.RecordSource = MaTable
End If
End Sub
<CODE>
cs_ptitanic
Messages postés12Date d'inscriptionsamedi 14 janvier 2006StatutMembreDernière intervention 9 août 2007 9 août 2007 à 15:19
Pardon ....
Tu dois mettre
nomSousFormulaire.form.recordsource = "Req"
ou
nomSousFormulaire.form.recordsource = "select * from woa where date_emission >= me.debut"