OVH Cloud OVH Cloud

Recordset

3 réponses
Avatar
Nina
Boujour

Je veux recuperer le nombre de sect_num selon la valeur du champ Id_prop de
mon formulaire.

Dim Db As DAO.Database
Dim Rs As DAO.Recordset
Dim Rq As String
Dim nombre As Integer


Set Db = CurrentDb
Rq = "SELECT parcelle.SECT_NUM, parcelle.ID_PROP FROM parcelle WHERE
(((parcelle.ID_PROP)= 32915));"
Set Rs = Db.OpenRecordset(Rq)
nombre = Rs.RecordCount

MsgBox nombre

Comme ca ca marche mais si je veux recuperer la nombre de sect_num pour la
valeur de mon id_prop du formaulaire en cours soit :
Rq = "SELECT parcelle.SECT_NUM, parcelle.ID_PROP FROM parcelle WHERE
(((parcelle.ID_PROP)= Me![Id_Prop]));"
et bein ca ne marche plus...comment faire

N.

3 réponses

Avatar
Raymond [mvp]
Bonjour.

faut sortir Me![Id_Prop] du littéral et mettre :
Rq = "SELECT parcelle.SECT_NUM, parcelle.ID_PROP FROM parcelle WHERE
parcelle.ID_PROP = " & Me![Id_Prop] & ";"

le & ";" n'est pas obligatoire mais c'est mieux.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Nina" a écrit dans le message de
news:
Boujour

Je veux recuperer le nombre de sect_num selon la valeur du champ Id_prop
de mon formulaire.

Dim Db As DAO.Database
Dim Rs As DAO.Recordset
Dim Rq As String
Dim nombre As Integer


Set Db = CurrentDb
Rq = "SELECT parcelle.SECT_NUM, parcelle.ID_PROP FROM parcelle WHERE
(((parcelle.ID_PROP)= 32915));"
Set Rs = Db.OpenRecordset(Rq)
nombre = Rs.RecordCount

MsgBox nombre

Comme ca ca marche mais si je veux recuperer la nombre de sect_num pour la
valeur de mon id_prop du formaulaire en cours soit :
Rq = "SELECT parcelle.SECT_NUM, parcelle.ID_PROP FROM parcelle WHERE
(((parcelle.ID_PROP)= Me![Id_Prop]));"
et bein ca ne marche plus...comment faire

N.




Avatar
Nina
Merci bcp, je ne comprendrais jamais la syntaxe des "" , et des && encore
moins des _ dans les longues requetes...
Existe t il une doc de reference que je pourrais afficher sur mon bureau
:-))

Encore merci

N.
"Raymond [mvp]" a écrit dans le message de
news:
Bonjour.

faut sortir Me![Id_Prop] du littéral et mettre :
Rq = "SELECT parcelle.SECT_NUM, parcelle.ID_PROP FROM parcelle WHERE
parcelle.ID_PROP = " & Me![Id_Prop] & ";"

le & ";" n'est pas obligatoire mais c'est mieux.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Nina" a écrit dans le message de
news:
Boujour

Je veux recuperer le nombre de sect_num selon la valeur du champ Id_prop
de mon formulaire.

Dim Db As DAO.Database
Dim Rs As DAO.Recordset
Dim Rq As String
Dim nombre As Integer


Set Db = CurrentDb
Rq = "SELECT parcelle.SECT_NUM, parcelle.ID_PROP FROM parcelle WHERE
(((parcelle.ID_PROP)= 32915));"
Set Rs = Db.OpenRecordset(Rq)
nombre = Rs.RecordCount

MsgBox nombre

Comme ca ca marche mais si je veux recuperer la nombre de sect_num pour
la valeur de mon id_prop du formaulaire en cours soit :
Rq = "SELECT parcelle.SECT_NUM, parcelle.ID_PROP FROM parcelle WHERE
(((parcelle.ID_PROP)= Me![Id_Prop]));"
et bein ca ne marche plus...comment faire

N.








Avatar
Raymond [mvp]
ce n'est pas dans ton bureau mais dans ta tête qu'il faut le mettre. je
plaisante, ça viendra tout seul , en attendant nous sommes là.

dans ce cas précis:
...WHERE (((parcelle.ID_PROP)= Me![Id_Prop]));"

Me![Id_Prop] fait partie du texte lui-même, donc lorsque access va recevoir
le texte de la requête il va recevoir Me![Id_Prop] qu'il ne va reconnaître
car Me! ne peut être utilisé que dans un formulaire, donc erreur.

Dans l'autre cas:
...WHERE parcelle.ID_PROP = " & Me![Id_Prop] & ";"
Access va recevoir, non pas le texte mais la valeur contenue dans le
contrôle nommé Me![Id_Prop]

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Nina" a écrit dans le message de
news:
Merci bcp, je ne comprendrais jamais la syntaxe des "" , et des && encore
moins des _ dans les longues requetes...
Existe t il une doc de reference que je pourrais afficher sur mon bureau
:-))

Encore merci