OVH Cloud OVH Cloud

récapitulatif par page

10 réponses
Avatar
baleino
Bonjour

J'ai fait un état pour des remises de chèques et en pieds de chaque page on
me demande de mettre la somme des montants indiqués par page. ainsi que le
nombre de chèque par page.

Pour le moment j'ai réussi à indiqué le montant cumulé et le nombre de
chèque en pied de page mais pour l'ensemble des pages et non par page.

exemple de ce que je veux :
page 1 15 enregistrements et 1200 € de chèque
page 2 12 enregistrements et 800 € de chèque

ce que j'obtien pour le moment :
page 1 15 enregistrements et 1200 € de chèque
page 2 27 enregistrements et 2000€ de chèque

Si vous avez une idée, merci de votre aide

10 réponses

Avatar
3stone
Salut,

"baleino"
| J'ai fait un état pour des remises de chèques et en pieds de chaque page on
| me demande de mettre la somme des montants indiqués par page. ainsi que le
| nombre de chèque par page.
|
| Pour le moment j'ai réussi à indiqué le montant cumulé et le nombre de
| chèque en pied de page mais pour l'ensemble des pages et non par page.
|
| exemple de ce que je veux :
| page 1 15 enregistrements et 1200 € de chèque
| page 2 12 enregistrements et 800 € de chèque
|
| ce que j'obtien pour le moment :
| page 1 15 enregistrements et 1200 € de chèque
| page 2 27 enregistrements et 2000€ de chèque


Crée deux textbox dans le pied de page et que tu nomme :

txtCompteurLigne et txtTotalParPage

- dans la sub de l'événement "Sur impression" de la section détail, tu mets:

CompteurLigne = CompteurLigne + 1
TotalParPage = TotalParPage + Montant

- déclare ces variables en haut, au dessus de la première sub :

Option Compare Database
Option Explicit

Dim CompteurLigne As Integer
Dim TotalParPage As Currency

- dans la sub de l'événement "Sur impression" du pied de page :

Me.txtCompteurLigne = CompteurLigne
Me.txtTotalParPage = TotalParPage
CompteurLigne = 0
TotalParPage = 0


Ok ?

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
A COSTA
Bonjour,
J'ai utilisé cette information pour mes états et j'ai créée une text box
(txtTotalParPage1) dans le header pour me donner le total de la page
précédente.
Dans le footer (txtTotalParPage) je veux le total de la page plus le total
de la page précédente.
Je pense que comme ça, il marche bien.

Private Sub Detail1_Print(Cancel As Integer, PrintCount As Integer)
TotalParPage = TotalParPage + Montant
TotalParPage1 = TotalParPage1 + Montant
End Sub

Private Sub PageFooterSection_Print(Cancel As Integer, PrintCount As Integer)
Me.txtTotalParPage = TotalParPage
TotalParPage = 0 + TotalParPage1
End Sub

Private Sub PageHeaderSection_Print(Cancel As Integer, PrintCount As Integer)
Me.txtTotalParPage1 = TotalParPage1
TotalParPage1 = TotalParPage
End Sub

J'ai 2 questions:
1 - Comment faire pour que la txtTotalParPage1 ne soit pas visible dans la
première page et la txtTotalParPage ne soit pas visible dans la dernière page
?

2- J'ai essayé la même chose dans un sub-état. Quand je l'ouvre c'est bien
mais quand j'ouvre l'état principal les txtTotalParPage ne sont pas visibles.
Comment faire pour régler la situation ?

Merci d'avance
A Costa


Salut,

"baleino"
| J'ai fait un état pour des remises de chèques et en pieds de chaque page on
| me demande de mettre la somme des montants indiqués par page. ainsi que le
| nombre de chèque par page.
|
| Pour le moment j'ai réussi à indiqué le montant cumulé et le nombre de
| chèque en pied de page mais pour l'ensemble des pages et non par page.
|
| exemple de ce que je veux :
| page 1 15 enregistrements et 1200 € de chèque
| page 2 12 enregistrements et 800 € de chèque
|
| ce que j'obtien pour le moment :
| page 1 15 enregistrements et 1200 € de chèque
| page 2 27 enregistrements et 2000€ de chèque


Crée deux textbox dans le pied de page et que tu nomme :

txtCompteurLigne et txtTotalParPage

- dans la sub de l'événement "Sur impression" de la section détail, tu mets:

CompteurLigne = CompteurLigne + 1
TotalParPage = TotalParPage + Montant

- déclare ces variables en haut, au dessus de la première sub :

Option Compare Database
Option Explicit

Dim CompteurLigne As Integer
Dim TotalParPage As Currency

- dans la sub de l'événement "Sur impression" du pied de page :

Me.txtCompteurLigne = CompteurLigne
Me.txtTotalParPage = TotalParPage
CompteurLigne = 0
TotalParPage = 0


Ok ?

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





Avatar
3stone
Salut,

"A COSTA"
| J'ai utilisé cette information pour mes états et j'ai créée une text box
| (txtTotalParPage1) dans le header pour me donner le total de la page
| précédente.
| Dans le footer (txtTotalParPage) je veux le total de la page plus le total
| de la page précédente.
| Je pense que comme ça, il marche bien.
[...]

| J'ai 2 questions:
| 1 - Comment faire pour que la txtTotalParPage1 ne soit pas visible dans la
| première page et la txtTotalParPage ne soit pas visible dans la dernière page
| ?


Regarde les propriétés [Page] et [Pages] qui indique le numéro de la page
actuelle et le total des pages de l'état.

Et avec un test du genre:

MaTextbox.Visible = (Page > 1)

tu peux rendre visible ou nous...


| 2- J'ai essayé la même chose dans un sub-état. Quand je l'ouvre c'est bien
| mais quand j'ouvre l'état principal les txtTotalParPage ne sont pas visibles.
| Comment faire pour régler la situation ?


Un sous état n'a pas de page, c'est pour cela qu'il na pas non plus de pied de page.


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
A COSTA
Quand j'ai crée les sub reports, dans l'option Source Object j'ai mis
Report.MonReport1 et un autre Report.MonReport1.
Donc dans MonReport1 et MonReport2 j'ai toutes les options de footer et
header, et la je vois les totaux par page. Quand j'ouvre le report principal
je ne vois pas la txtTotalParPage.
Merci
A Costa


Salut,

"A COSTA"
| J'ai utilisé cette information pour mes états et j'ai créée une text box
| (txtTotalParPage1) dans le header pour me donner le total de la page
| précédente.
| Dans le footer (txtTotalParPage) je veux le total de la page plus le total
| de la page précédente.
| Je pense que comme ça, il marche bien.
[...]

| J'ai 2 questions:
| 1 - Comment faire pour que la txtTotalParPage1 ne soit pas visible dans la
| première page et la txtTotalParPage ne soit pas visible dans la dernière page
| ?


Regarde les propriétés [Page] et [Pages] qui indique le numéro de la page
actuelle et le total des pages de l'état.

Et avec un test du genre:

MaTextbox.Visible = (Page > 1)

tu peux rendre visible ou nous...


| 2- J'ai essayé la même chose dans un sub-état. Quand je l'ouvre c'est bien
| mais quand j'ouvre l'état principal les txtTotalParPage ne sont pas visibles.
| Comment faire pour régler la situation ?


Un sous état n'a pas de page, c'est pour cela qu'il na pas non plus de pied de page.


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




Avatar
3stone
re,

"A COSTA"
| Quand j'ai crée les sub reports, dans l'option Source Object j'ai mis
| Report.MonReport1 et un autre Report.MonReport1.
| Donc dans MonReport1 et MonReport2 j'ai toutes les options de footer et
| header, et la je vois les totaux par page. Quand j'ouvre le report principal
| je ne vois pas la txtTotalParPage.


Je ne comprends pas ce que tu tente de m'expliquer, mais, dans l'aide il est dit:


"Microsoft Access n'imprime pas l'en-tête et le pied de page d'un sous-état ;
par conséquent, si vous insérez les étiquettes des en-têtes de colonne dans
l'en-tête de page du sous-état, elles n'apparaissent pas à l'impression de l'état."



--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
A COSTA
De tout façon, merci
J'ai apris qq chose.
A Costa


re,

"A COSTA"
| Quand j'ai crée les sub reports, dans l'option Source Object j'ai mis
| Report.MonReport1 et un autre Report.MonReport1.
| Donc dans MonReport1 et MonReport2 j'ai toutes les options de footer et
| header, et la je vois les totaux par page. Quand j'ouvre le report principal
| je ne vois pas la txtTotalParPage.


Je ne comprends pas ce que tu tente de m'expliquer, mais, dans l'aide il est dit:


"Microsoft Access n'imprime pas l'en-tête et le pied de page d'un sous-état ;
par conséquent, si vous insérez les étiquettes des en-têtes de colonne dans
l'en-tête de page du sous-état, elles n'apparaissent pas à l'impression de l'état."



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




Avatar
baleino
Merci pour ces solutions, je vais essayé et vous tient au courant


De tout façon, merci
J'ai apris qq chose.
A Costa


re,

"A COSTA"
| Quand j'ai crée les sub reports, dans l'option Source Object j'ai mis
| Report.MonReport1 et un autre Report.MonReport1.
| Donc dans MonReport1 et MonReport2 j'ai toutes les options de footer et
| header, et la je vois les totaux par page. Quand j'ouvre le report principal
| je ne vois pas la txtTotalParPage.


Je ne comprends pas ce que tu tente de m'expliquer, mais, dans l'aide il est dit:


"Microsoft Access n'imprime pas l'en-tête et le pied de page d'un sous-état ;
par conséquent, si vous insérez les étiquettes des en-têtes de colonne dans
l'en-tête de page du sous-état, elles n'apparaissent pas à l'impression de l'état."



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






Avatar
baleino
Rebonjour

Bon autant dire que je suis bon en développement access tant que c'est
basique mais dès qu'il fait entrer du code VBA c'est une autre paire de
manche.

J'ai essayé de réaliser ce que vous me proposiez mais cela ne marche pas. IL
faut dire que vos indications ne me parlent pas beaucoup type "Sub". Excusez
moi.

IL faut dire que mon état est peut-être un peu plus complexe que je ne l'ai
décrit au départ.

Il est construit de la sorte

1 - en tête d'état
2 - en tête de page
3 - En tête de groupe sur lequel j'ai regroupé les éléments par numéro de
chèque. ce groupe comporte : un champs NumLigne, un champs banque, un champ
[NomFamille], un champs [SommeMontant] qui additionne les montants de chacune
des activités qui se trouvent dans la partie détail, un champs [CumulMontant]
4 - un champs détail qui comporte les champs [Montant], [NomActicvité],
[Prénom]
5 - Pieds de page
6 - Pieds d'état

Compte tenu de mon niveau je vous remercie de bien vouloir me guider en
étant le plus précis possible car dans votre première explication j'ai eu un
peu de mal.

Merci de votre aide par avance.


Merci pour ces solutions, je vais essayé et vous tient au courant


De tout façon, merci
J'ai apris qq chose.
A Costa


re,

"A COSTA"
| Quand j'ai crée les sub reports, dans l'option Source Object j'ai mis
| Report.MonReport1 et un autre Report.MonReport1.
| Donc dans MonReport1 et MonReport2 j'ai toutes les options de footer et
| header, et la je vois les totaux par page. Quand j'ouvre le report principal
| je ne vois pas la txtTotalParPage.


Je ne comprends pas ce que tu tente de m'expliquer, mais, dans l'aide il est dit:


"Microsoft Access n'imprime pas l'en-tête et le pied de page d'un sous-état ;
par conséquent, si vous insérez les étiquettes des en-têtes de colonne dans
l'en-tête de page du sous-état, elles n'apparaissent pas à l'impression de l'état."



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








Avatar
3stone
Salut,

"baleino"
| Bon autant dire que je suis bon en développement access tant que c'est
| basique mais dès qu'il fait entrer du code VBA c'est une autre paire de
| manche.
<snip>

Vraiment ?

Crée quelque chose avec un assistant, un bouton par exemple...
pour lui faire faire n'importe quoi !!

Ensuite, en mode création, tu sélectionne ce bouton et puis les propriétés.
Tu découvriras parmis celles-ci un onglet "Evénement" dans lequel
se trouvera l'appel à une "Procédure évenementielle"

Autre nom pour cela : une Sub ;-)

Clique dans la ligne, ensuite à droite sur les 3 points [...]
Miracle ! une Sub !!!


PS: Pour les bons dévellopeurs ne connaissant pas les sub, il y a
des petits livres à qques euros "VBA pour les nulls" ou autres.

;-))


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
A COSTA
Bonjour,
à propos de recapitulatif par page j'ai constaté qui cela marche bien si on
ne fait pas le print preview avant d'imprimer. Le total de la premiere page
en haut de la 2eme, et en bas de la 2eme et le total de la 2eme + le total de
la 1ere et etc.
On voit bien les resultats à l'ecran mais quand on imprime le calcul n'est
plus correct.
Donc, je demande le print directement et ça fonctionne trés bien.
Je ne sais pas si ça peut aider, mais je laisse l'information (correcte ????).
Bien à vous
A Costa


Salut,

"baleino"
| Bon autant dire que je suis bon en développement access tant que c'est
| basique mais dès qu'il fait entrer du code VBA c'est une autre paire de
| manche.
<snip>

Vraiment ?

Crée quelque chose avec un assistant, un bouton par exemple...
pour lui faire faire n'importe quoi !!

Ensuite, en mode création, tu sélectionne ce bouton et puis les propriétés.
Tu découvriras parmis celles-ci un onglet "Evénement" dans lequel
se trouvera l'appel à une "Procédure évenementielle"

Autre nom pour cela : une Sub ;-)

Clique dans la ligne, ensuite à droite sur les 3 points [...]
Miracle ! une Sub !!!


PS: Pour les bons dévellopeurs ne connaissant pas les sub, il y a
des petits livres à qques euros "VBA pour les nulls" ou autres.

;-))


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