OVH Cloud OVH Cloud

calcul de champ dans form

1 réponse
Avatar
Txl
Bonjour à tous,

Suite à mon pb de calcul dans sousform 3stone m'a conseillé de passer par
"dcount", et bien sur je n'y arrive qu'a moitié (on ne rit pas...)

Donc voila mon problème détaillé

tblsession (table)

refsession
totsession


tbldonnees (table)

sessiondonnees
pneudonnees


Mon form principal frmsession contient un sousform sfrmsession qui fait le
lien entre la table de session et la table de donnes de sessions en
utilisant refsession et sessiondonnees comme champs pères et fils ca
marche très bien

Par contre je voudrais assigner à totsession le total de pneus vendus par
session.

Comme les pneus sont affichés dans le sousform j'ai fait le bout de code
suivant :

Private Sub Form_Activate()
Me!totsession = DCount("[pneudonnees]", "Tbldonnees",
"[refsession]=[sessiondonnees]")
End Sub

Alors ca marche correctement parce que je vois que ca attribue une valeur
dans la table tblsession mais seulement à l'enregistrement sur lequel le
form s'ouvre, et bien sur je voudrais que ca s'applique à chaque
enregistrement quand je navigue dans le form (enr suivant et précédent).

Pour le moment le code est sur l'activation du form et je pense que c'est
de la que vient mon problème, comment (en fait ou) mettre le code sur une
propriété de form qui me stockerait la valeur dans la table a chaque
changement d'enregistrement dans le form ?

Merci d'avance



--
Email contact

http://cerbermail.com/?ltQ8eCFmRa

1 réponse

Avatar
3stone
Salut,

"Txl"
[...]
| Private Sub Form_Activate()
| Me!totsession = DCount("[pneudonnees]", "Tbldonnees",
| "[refsession]=[sessiondonnees]")
| End Sub


la fin (en ne tenant pas compte des parenthèses) :

"[refsession]=[sessiondonnees]"

ne doit pas fonctionner correctement...

"[refsession]='" & [sessiondonnees] &"'"

serait mieux.


|
| Alors ca marche correctement parce que je vois que ca attribue une valeur
| dans la table tblsession mais seulement à l'enregistrement sur lequel le
| form s'ouvre, et bien sur je voudrais que ca s'applique à chaque
| enregistrement quand je navigue dans le form (enr suivant et précédent).
|
| Pour le moment le code est sur l'activation du form et je pense que c'est
| de la que vient mon problème, comment (en fait ou) mettre le code sur une
| propriété de form qui me stockerait la valeur dans la table a chaque
| changement d'enregistrement dans le form ?

Faire un DCount() pour le sauver tout de même dans une tables est un hérésie !
Le principe est de faire le DCount() lorsque tu as besoin de la valeur SANS
la sauver dans une table...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/