OVH Cloud OVH Cloud

Somme sur regroupement Etat

9 réponses
Avatar
Bruno
Bonjour,

J'ai un probl=E8me pour faire une somme dans un =E9tat=20
comportant plusieurs niveaux de regroupement. Cet Etat=20
est bas=E9 sur une requ=EAte qui me donne, par jour, le=20
nombre de repas pris et les aliments sortis du stock=20
chaque jour. J'ai donc fait un regroupement sur les jours=20
pour avoir, par jour, le nombre de repas pris (=3D1=20
enregistrement par jour) et les sorties du stock=20
correspondant =E0 chaque jour (=3Dplusieurs enregsitrement=20
par jour). L'affichage de ces infos marche tr=E8s bien mais=20
lorsque je veux faire, en pied d'=E9tat, la somme de tous=20
les repas pris, access multiplie le nombre de repas de=20
chaque journ=E9e par le nombre de sorties de chaque journ=E9e=20
avant de faire la somme. Par exemple si j'ai 2 repas le=20
01/10 avec 3 aliments sortis, la somme du pied d'=E9tat=20
compte 3 fois 2 repas. Bien =E9videmment je veux qu'il ne=20
me compte que 2 repas pour cette journ=E9e l=E0 pour faire ma=20
somme finale.
J'esp=E8re que mon explication est claire mais je n'en suis=20
pas certain.
PS : je ne maitrise pas du tout le visual basic et=20
n'utilise que le g=E9n=E9rateur d'expression pour cr=E9er mes=20
contr=F4les de somme.
Merci de votre aide
Bruno

9 réponses

Avatar
Gafish
Bonjour,

J'imagine que tu as un champ numérique avec le nombre de repas. Dans le
controlSource de ton champ qui doit faire la somme, tu mets
=Somme([NomDuChamp])

Arnaud

"Bruno" a écrit dans le message de news:
099a01c4b114$3f3fe1f0$
Bonjour,

J'ai un problème pour faire une somme dans un état
comportant plusieurs niveaux de regroupement. Cet Etat
est basé sur une requête qui me donne, par jour, le
nombre de repas pris et les aliments sortis du stock
chaque jour. J'ai donc fait un regroupement sur les jours
pour avoir, par jour, le nombre de repas pris (=1
enregistrement par jour) et les sorties du stock
correspondant à chaque jour (=plusieurs enregsitrement
par jour). L'affichage de ces infos marche très bien mais
lorsque je veux faire, en pied d'état, la somme de tous
les repas pris, access multiplie le nombre de repas de
chaque journée par le nombre de sorties de chaque journée
avant de faire la somme. Par exemple si j'ai 2 repas le
01/10 avec 3 aliments sortis, la somme du pied d'état
compte 3 fois 2 repas. Bien évidemment je veux qu'il ne
me compte que 2 repas pour cette journée là pour faire ma
somme finale.
J'espère que mon explication est claire mais je n'en suis
pas certain.
PS : je ne maitrise pas du tout le visual basic et
n'utilise que le générateur d'expression pour créer mes
contrôles de somme.
Merci de votre aide
Bruno
Avatar
Ilan
Bonjour,
En fait Access additionne la valeur NbRepas pour tous les enregistrements
trouves.
Tu as 3 articles donc 3 enregistrements dans lesquelles NbRepas=2.
Puisque cette information n'existe qu'une seule fois dans ta requete n'en
fait pas le cumul dans le pied d'etat. Verifie peut-etre dans ton controle
que la propriete
Cumul est a 'NON'.




Bonjour,

J'ai un problème pour faire une somme dans un état
comportant plusieurs niveaux de regroupement. Cet Etat
est basé sur une requête qui me donne, par jour, le
nombre de repas pris et les aliments sortis du stock
chaque jour. J'ai donc fait un regroupement sur les jours
pour avoir, par jour, le nombre de repas pris (=1
enregistrement par jour) et les sorties du stock
correspondant à chaque jour (=plusieurs enregsitrement
par jour). L'affichage de ces infos marche très bien mais
lorsque je veux faire, en pied d'état, la somme de tous
les repas pris, access multiplie le nombre de repas de
chaque journée par le nombre de sorties de chaque journée
avant de faire la somme. Par exemple si j'ai 2 repas le
01/10 avec 3 aliments sortis, la somme du pied d'état
compte 3 fois 2 repas. Bien évidemment je veux qu'il ne
me compte que 2 repas pour cette journée là pour faire ma
somme finale.
J'espère que mon explication est claire mais je n'en suis
pas certain.
PS : je ne maitrise pas du tout le visual basic et
n'utilise que le générateur d'expression pour créer mes
contrôles de somme.
Merci de votre aide
Bruno



Avatar
Bruno
C'est exactement ce que je fais mais ça me donne le
résultat que j'ai décrit.

-----Message d'origine-----
Bonjour,

J'imagine que tu as un champ numérique avec le nombre de
repas. Dans le

controlSource de ton champ qui doit faire la somme, tu
mets

=Somme([NomDuChamp])

Arnaud

"Bruno" a écrit dans le
message de news:

099a01c4b114$3f3fe1f0$
Bonjour,

J'ai un problème pour faire une somme dans un état
comportant plusieurs niveaux de regroupement. Cet Etat
est basé sur une requête qui me donne, par jour, le
nombre de repas pris et les aliments sortis du stock
chaque jour. J'ai donc fait un regroupement sur les jours
pour avoir, par jour, le nombre de repas pris (=1
enregistrement par jour) et les sorties du stock
correspondant à chaque jour (=plusieurs enregsitrement
par jour). L'affichage de ces infos marche très bien mais
lorsque je veux faire, en pied d'état, la somme de tous
les repas pris, access multiplie le nombre de repas de
chaque journée par le nombre de sorties de chaque journée
avant de faire la somme. Par exemple si j'ai 2 repas le
01/10 avec 3 aliments sortis, la somme du pied d'état
compte 3 fois 2 repas. Bien évidemment je veux qu'il ne
me compte que 2 repas pour cette journée là pour faire ma
somme finale.
J'espère que mon explication est claire mais je n'en suis
pas certain.
PS : je ne maitrise pas du tout le visual basic et
n'utilise que le générateur d'expression pour créer mes
contrôles de somme.
Merci de votre aide
Bruno


.



Avatar
Bruno
La propriété cumul est bien à 'NON' mais mon problème
c'est justement que la valeur Nbrepas apparait 3 fois
dans ma requête puisque cette requête fait apparaitre en
lignes toutes les informations de la journée bout à bout.
Donc quand j'ai 3 sorties, elle me donne trois lignes
mais les champs [date] et [Nbrepas] ont la même valeur
sur les trois lignes. Ce sont seulement les champs
suivant, contenant les infos sur les sorties, qui
changement à chaque ligne.
Bruno
-----Message d'origine-----
Bonjour,
En fait Access additionne la valeur NbRepas pour tous
les enregistrements

trouves.
Tu as 3 articles donc 3 enregistrements dans lesquelles
NbRepas=2.

Puisque cette information n'existe qu'une seule fois
dans ta requete n'en

fait pas le cumul dans le pied d'etat. Verifie peut-etre
dans ton controle

que la propriete
Cumul est a 'NON'.




Bonjour,

J'ai un problème pour faire une somme dans un état
comportant plusieurs niveaux de regroupement. Cet Etat
est basé sur une requête qui me donne, par jour, le
nombre de repas pris et les aliments sortis du stock
chaque jour. J'ai donc fait un regroupement sur les
jours


pour avoir, par jour, le nombre de repas pris (=1
enregistrement par jour) et les sorties du stock
correspondant à chaque jour (=plusieurs
enregsitrement


par jour). L'affichage de ces infos marche très bien
mais


lorsque je veux faire, en pied d'état, la somme de
tous


les repas pris, access multiplie le nombre de repas de
chaque journée par le nombre de sorties de chaque
journée


avant de faire la somme. Par exemple si j'ai 2 repas
le


01/10 avec 3 aliments sortis, la somme du pied d'état
compte 3 fois 2 repas. Bien évidemment je veux qu'il
ne


me compte que 2 repas pour cette journée là pour
faire ma


somme finale.
J'espère que mon explication est claire mais je n'en
suis


pas certain.
PS : je ne maitrise pas du tout le visual basic et
n'utilise que le générateur d'expression pour créer
mes


contrôles de somme.
Merci de votre aide
Bruno

.





Avatar
Ilan
Re,
en clair, tu fais la somme d'une somme ce qui te donne naturellement son
produit .
Dans la propriete controlsource ne met que le nom du champ. Ton controle
du pied d'etat doit etre strictement identique a celui de ton regroupement
puisqu'ils doivent contenir la meme information.



La propriété cumul est bien à 'NON' mais mon problème
c'est justement que la valeur Nbrepas apparait 3 fois
dans ma requête puisque cette requête fait apparaitre en
lignes toutes les informations de la journée bout à bout.
Donc quand j'ai 3 sorties, elle me donne trois lignes
mais les champs [date] et [Nbrepas] ont la même valeur
sur les trois lignes. Ce sont seulement les champs
suivant, contenant les infos sur les sorties, qui
changement à chaque ligne.
Bruno
-----Message d'origine-----
Bonjour,
En fait Access additionne la valeur NbRepas pour tous
les enregistrements

trouves.
Tu as 3 articles donc 3 enregistrements dans lesquelles
NbRepas=2.

Puisque cette information n'existe qu'une seule fois
dans ta requete n'en

fait pas le cumul dans le pied d'etat. Verifie peut-etre
dans ton controle

que la propriete
Cumul est a 'NON'.




Bonjour,

J'ai un problème pour faire une somme dans un état
comportant plusieurs niveaux de regroupement. Cet Etat
est basé sur une requête qui me donne, par jour, le
nombre de repas pris et les aliments sortis du stock
chaque jour. J'ai donc fait un regroupement sur les
jours


pour avoir, par jour, le nombre de repas pris (=1
enregistrement par jour) et les sorties du stock
correspondant à chaque jour (=plusieurs
enregsitrement


par jour). L'affichage de ces infos marche très bien
mais


lorsque je veux faire, en pied d'état, la somme de
tous


les repas pris, access multiplie le nombre de repas de
chaque journée par le nombre de sorties de chaque
journée


avant de faire la somme. Par exemple si j'ai 2 repas
le


01/10 avec 3 aliments sortis, la somme du pied d'état
compte 3 fois 2 repas. Bien évidemment je veux qu'il
ne


me compte que 2 repas pour cette journée là pour
faire ma


somme finale.
J'espère que mon explication est claire mais je n'en
suis


pas certain.
PS : je ne maitrise pas du tout le visual basic et
n'utilise que le générateur d'expression pour créer
mes


contrôles de somme.
Merci de votre aide
Bruno

.








Avatar
Bruno
Si je fais ce que tu me dis, j'obtiens dans mon pied
d'état le nombre de repas pour 1 jour (le premier), qui
figure déjà dans mon en-tête de groupe 'Jour'. Mais ce
que je veux c'est la somme de tous les repas cad la somme
des contrôle 'NbRepas' figurant dans mon en-tête de
groupe 'Jour'. Je ne sais pas si je suis très clair.

-----Message d'origine-----
Re,
en clair, tu fais la somme d'une somme ce qui te donne
naturellement son

produit .
Dans la propriete controlsource ne met que le nom du
champ. Ton controle

du pied d'etat doit etre strictement identique a celui
de ton regroupement

puisqu'ils doivent contenir la meme information.



La propriété cumul est bien à 'NON' mais mon
problème


c'est justement que la valeur Nbrepas apparait 3 fois
dans ma requête puisque cette requête fait
apparaitre en


lignes toutes les informations de la journée bout Ã
bout.


Donc quand j'ai 3 sorties, elle me donne trois lignes
mais les champs [date] et [Nbrepas] ont la même
valeur


sur les trois lignes. Ce sont seulement les champs
suivant, contenant les infos sur les sorties, qui
changement à chaque ligne.
Bruno
-----Message d'origine-----
Bonjour,
En fait Access additionne la valeur NbRepas pour tous
les enregistrements

trouves.
Tu as 3 articles donc 3 enregistrements dans
lesquelles



NbRepas=2.
Puisque cette information n'existe qu'une seule fois
dans ta requete n'en

fait pas le cumul dans le pied d'etat. Verifie peut-
etre



dans ton controle
que la propriete
Cumul est a 'NON'.




Bonjour,

J'ai un problÃf¨me pour faire une somme dans un
Ãf©tat




comportant plusieurs niveaux de regroupement. Cet
Etat




est basÃf© sur une requÃfªte qui me donne, par
jour, le




nombre de repas pris et les aliments sortis du
stock




chaque jour. J'ai donc fait un regroupement sur les
jours


pour avoir, par jour, le nombre de repas pris (=1
enregistrement par jour) et les sorties du stock
correspondant Ãf chaque jour (=plusieurs
enregsitrement


par jour). L'affichage de ces infos marche trÃf¨s
bien




mais
lorsque je veux faire, en pied d'Ãf©tat, la somme
de




tous
les repas pris, access multiplie le nombre de repas
de




chaque journÃf©e par le nombre de sorties de
chaque




journÃf©e
avant de faire la somme. Par exemple si j'ai 2
repas




le
01/10 avec 3 aliments sortis, la somme du pied
d'Ãf©tat




compte 3 fois 2 repas. Bien Ãf©videmment je veux
qu'il




ne
me compte que 2 repas pour cette journÃf©e lÃf
pour




faire ma
somme finale.
J'espÃf¨re que mon explication est claire mais je
n'en




suis
pas certain.
PS : je ne maitrise pas du tout le visual basic et
n'utilise que le gÃf©nÃf©rateur d'expression pour
crÃf©er




mes
contrÃf´les de somme.
Merci de votre aide
Bruno

.




.







Avatar
Ilan
Donc tu dois effectuer la somme sur le contenu de ton controle et non sur le
champ de ta requete.

=Somme(NonduControle.Value)

Ou encore faire un truc du genre :
=Somme(Somme(NbRepas) / NBArticles)





Si je fais ce que tu me dis, j'obtiens dans mon pied
d'état le nombre de repas pour 1 jour (le premier), qui
figure déjà dans mon en-tête de groupe 'Jour'. Mais ce
que je veux c'est la somme de tous les repas cad la somme
des contrôle 'NbRepas' figurant dans mon en-tête de
groupe 'Jour'. Je ne sais pas si je suis très clair.

-----Message d'origine-----
Re,
en clair, tu fais la somme d'une somme ce qui te donne
naturellement son

produit .
Dans la propriete controlsource ne met que le nom du
champ. Ton controle

du pied d'etat doit etre strictement identique a celui
de ton regroupement

puisqu'ils doivent contenir la meme information.



La propriété cumul est bien à 'NON' mais mon
problème


c'est justement que la valeur Nbrepas apparait 3 fois
dans ma requête puisque cette requête fait
apparaitre en


lignes toutes les informations de la journée bout Ã
bout.


Donc quand j'ai 3 sorties, elle me donne trois lignes
mais les champs [date] et [Nbrepas] ont la même
valeur


sur les trois lignes. Ce sont seulement les champs
suivant, contenant les infos sur les sorties, qui
changement à chaque ligne.
Bruno
-----Message d'origine-----
Bonjour,
En fait Access additionne la valeur NbRepas pour tous
les enregistrements

trouves.
Tu as 3 articles donc 3 enregistrements dans
lesquelles



NbRepas=2.
Puisque cette information n'existe qu'une seule fois
dans ta requete n'en

fait pas le cumul dans le pied d'etat. Verifie peut-
etre



dans ton controle
que la propriete
Cumul est a 'NON'.




Bonjour,

J'ai un problÃf¨me pour faire une somme dans un
Ãf©tat




comportant plusieurs niveaux de regroupement. Cet
Etat




est basÃf© sur une requÃfªte qui me donne, par
jour, le




nombre de repas pris et les aliments sortis du
stock




chaque jour. J'ai donc fait un regroupement sur les
jours


pour avoir, par jour, le nombre de repas pris (=1
enregistrement par jour) et les sorties du stock
correspondant Ãf chaque jour (=plusieurs
enregsitrement


par jour). L'affichage de ces infos marche trÃf¨s
bien




mais
lorsque je veux faire, en pied d'Ãf©tat, la somme
de




tous
les repas pris, access multiplie le nombre de repas
de




chaque journÃf©e par le nombre de sorties de
chaque




journÃf©e
avant de faire la somme. Par exemple si j'ai 2
repas




le
01/10 avec 3 aliments sortis, la somme du pied
d'Ãf©tat




compte 3 fois 2 repas. Bien Ãf©videmment je veux
qu'il




ne
me compte que 2 repas pour cette journÃf©e lÃf
pour




faire ma
somme finale.
J'espÃf¨re que mon explication est claire mais je
n'en




suis
pas certain.
PS : je ne maitrise pas du tout le visual basic et
n'utilise que le gÃf©nÃf©rateur d'expression pour
crÃf©er




mes
contrÃf´les de somme.
Merci de votre aide
Bruno

.




.










Avatar
Ilan
Ok, je crois que tu peux ajouter un controle dans le pied de groupe et dont
la propriete Source contient =Somme(NbRepas)/compte(Articles)
Et mets sa propriete Cumul a 'Par Groupe'.
Le controle de ton pied reprendra cette valeur.


Donc tu dois effectuer la somme sur le contenu de ton controle et non sur le
champ de ta requete.

=Somme(NonduControle.Value)

Ou encore faire un truc du genre :
=Somme(Somme(NbRepas) / NBArticles)





Si je fais ce que tu me dis, j'obtiens dans mon pied
d'état le nombre de repas pour 1 jour (le premier), qui
figure déjà dans mon en-tête de groupe 'Jour'. Mais ce
que je veux c'est la somme de tous les repas cad la somme
des contrôle 'NbRepas' figurant dans mon en-tête de
groupe 'Jour'. Je ne sais pas si je suis très clair.

-----Message d'origine-----
Re,
en clair, tu fais la somme d'une somme ce qui te donne
naturellement son

produit .
Dans la propriete controlsource ne met que le nom du
champ. Ton controle

du pied d'etat doit etre strictement identique a celui
de ton regroupement

puisqu'ils doivent contenir la meme information.



La propriété cumul est bien à 'NON' mais mon
problème


c'est justement que la valeur Nbrepas apparait 3 fois
dans ma requête puisque cette requête fait
apparaitre en


lignes toutes les informations de la journée bout Ã
bout.


Donc quand j'ai 3 sorties, elle me donne trois lignes
mais les champs [date] et [Nbrepas] ont la même
valeur


sur les trois lignes. Ce sont seulement les champs
suivant, contenant les infos sur les sorties, qui
changement à chaque ligne.
Bruno
-----Message d'origine-----
Bonjour,
En fait Access additionne la valeur NbRepas pour tous
les enregistrements

trouves.
Tu as 3 articles donc 3 enregistrements dans
lesquelles



NbRepas=2.
Puisque cette information n'existe qu'une seule fois
dans ta requete n'en

fait pas le cumul dans le pied d'etat. Verifie peut-
etre



dans ton controle
que la propriete
Cumul est a 'NON'.




Bonjour,

J'ai un problÃf¨me pour faire une somme dans un
Ãf©tat




comportant plusieurs niveaux de regroupement. Cet
Etat




est basÃf© sur une requÃfªte qui me donne, par
jour, le




nombre de repas pris et les aliments sortis du
stock




chaque jour. J'ai donc fait un regroupement sur les
jours


pour avoir, par jour, le nombre de repas pris (=1
enregistrement par jour) et les sorties du stock
correspondant Ãf chaque jour (=plusieurs
enregsitrement


par jour). L'affichage de ces infos marche trÃf¨s
bien




mais
lorsque je veux faire, en pied d'Ãf©tat, la somme
de




tous
les repas pris, access multiplie le nombre de repas
de




chaque journÃf©e par le nombre de sorties de
chaque




journÃf©e
avant de faire la somme. Par exemple si j'ai 2
repas




le
01/10 avec 3 aliments sortis, la somme du pied
d'Ãf©tat




compte 3 fois 2 repas. Bien Ãf©videmment je veux
qu'il




ne
me compte que 2 repas pour cette journÃf©e lÃf
pour




faire ma
somme finale.
J'espÃf¨re que mon explication est claire mais je
n'en




suis
pas certain.
PS : je ne maitrise pas du tout le visual basic et
n'utilise que le gÃf©nÃf©rateur d'expression pour
crÃf©er




mes
contrÃf´les de somme.
Merci de votre aide
Bruno

.




.












Avatar
Bruno
Ca ne marche pas non plus comme tu m'as indiqué. J'ai
finalement réussi avec une bidouille, en faisant
simplement des cumul intermédiaires pour mon nombre de
repas et la valeur total de mes sorties puis en créant un
autre contrôle faisant la division entre mes cumuls.
C'est un peu bricolage car mes cumuls intermédiaires ne
m'intéressent pas donc je les rends non visibles mais ça
marche.

Merci beaucoup pour tes conseils et le temps que tu m'as
consacré.

Bruno
-----Message d'origine-----
Ok, je crois que tu peux ajouter un controle dans le
pied de groupe et dont

la propriete Source contient =Somme(NbRepas)/compte
(Articles)

Et mets sa propriete Cumul a 'Par Groupe'.
Le controle de ton pied reprendra cette valeur.


Donc tu dois effectuer la somme sur le contenu de ton
controle et non sur le


champ de ta requete.

=Somme(NonduControle.Value)

Ou encore faire un truc du genre :
=Somme(Somme(NbRepas) / NBArticles)





Si je fais ce que tu me dis, j'obtiens dans mon pied
d'état le nombre de repas pour 1 jour (le premier),
qui



figure déjà dans mon en-tête de groupe 'Jour'.
Mais ce



que je veux c'est la somme de tous les repas cad la
somme



des contrôle 'NbRepas' figurant dans mon en-tête
de



groupe 'Jour'. Je ne sais pas si je suis très clair.

-----Message d'origine-----
Re,
en clair, tu fais la somme d'une somme ce qui te
donne




naturellement son
produit .
Dans la propriete controlsource ne met que le nom
du




champ. Ton controle
du pied d'etat doit etre strictement identique a
celui




de ton regroupement
puisqu'ils doivent contenir la meme information.



La propriÃf©tÃf© cumul est bien Ãf 'NON' mais
mon





problÃf¨me
c'est justement que la valeur Nbrepas apparait 3
fois





dans ma requÃfªte puisque cette requÃfªte fait
apparaitre en


lignes toutes les informations de la journÃf©e
bout Ãf





bout.
Donc quand j'ai 3 sorties, elle me donne trois
lignes





mais les champs [date] et [Nbrepas] ont la
mÃfªme





valeur
sur les trois lignes. Ce sont seulement les
champs





suivant, contenant les infos sur les sorties, qui
changement Ãf chaque ligne.
Bruno
-----Message d'origine-----
Bonjour,
En fait Access additionne la valeur NbRepas pour
tous






les enregistrements
trouves.
Tu as 3 articles donc 3 enregistrements dans
lesquelles



NbRepas=2.
Puisque cette information n'existe qu'une seule
fois






dans ta requete n'en
fait pas le cumul dans le pied d'etat. Verifie
peut-






etre
dans ton controle
que la propriete
Cumul est a 'NON'.




Bonjour,

J'ai un problÃffÃ,¨me pour faire une somme
dans un







ÃffÃ,©tat
comportant plusieurs niveaux de regroupement.
Cet







Etat
est basÃffÃ,© sur une requÃffÃ,ªte qui me
donne, par







jour, le
nombre de repas pris et les aliments sortis du
stock




chaque jour. J'ai donc fait un regroupement
sur les







jours
pour avoir, par jour, le nombre de repas pris
(=1







enregistrement par jour) et les sorties du
stock







correspondant Ãff chaque jour (=plusieurs
enregsitrement


par jour). L'affichage de ces infos marche
trÃffÃ,¨s







bien
mais
lorsque je veux faire, en pied d'ÃffÃ,©tat,
la somme







de
tous
les repas pris, access multiplie le nombre de
repas







de
chaque journÃffÃ,©e par le nombre de sorties
de







chaque
journÃffÃ,©e
avant de faire la somme. Par exemple si j'ai 2
repas




le
01/10 avec 3 aliments sortis, la somme du pied
d'ÃffÃ,©tat




compte 3 fois 2 repas. Bien ÃffÃ,©videmment
je veux







qu'il
ne
me compte que 2 repas pour cette journÃffÃ,©e
lÃff







pour
faire ma
somme finale.
J'espÃffÃ,¨re que mon explication est claire
mais je







n'en
suis
pas certain.
PS : je ne maitrise pas du tout le visual
basic et







n'utilise que le gÃffÃ,©nÃffÃ,©rateur
d'expression pour







crÃffÃ,©er
mes
contrÃffÃ,´les de somme.
Merci de votre aide
Bruno

.




.




.