Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/01/2011, 22h26   #1
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 69
Détails du profil
Informations personnelles :
Âge : 38
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : mai 2007
Messages : 69
Points : 26
Points : 26
Par défaut expression page par groupe dans un etat

Bonjour,
Je cherche désespéremment l' expression telle que :"="Page " & [Page] & " sur " & [Pages]" sauf que je souhaite en pied de page de mon état le numéro de page du regroupement. Pour information j'ai un saut de page à chaque nouveau regroupement ( propriété saut de page "avant section" dans l'En-tête de groupe). A chaque nouveau regroupement j'attend en pied de page "page 1 sur 1". Je comptait sur une expression "facile" mais impossible de trouver les premières lumières!!!
Quequ'un peut il me mettre sur la voie?
Merci pour le coup de pouce
garsflo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2011, 10h40   #2
Membre Expert
 
Avatar de keita
 
Homme
Inscription : novembre 2002
Messages : 879
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Côte d'Ivoire

Informations forums :
Inscription : novembre 2002
Messages : 879
Points : 1 015
Points : 1 015
Envoyer un message via MSN à keita
bonjour
dans le pied de page essayons ça:
1/ crées une zone de texte
2/dans sa source (control source):
="Page: " & [Page] & " / " & [Pages]
ou bien
="Page: " & [Page] & " sur " & [Pages]

j'espère que je ne suis pas passez à coté du sujet.

@+
keita est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2011, 15h30   #3
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 69
Détails du profil
Informations personnelles :
Âge : 38
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : mai 2007
Messages : 69
Points : 26
Points : 26
Salut Keita,
Ta solution me donne le numéro de page sur le nombre total de page. Je souhaite le numéro de page du regroupement. Une fois que le champ en en tête de groupe prend une autre valeur que la précedente alors il y a un saut de page et une numérotation qui repartirait 1 sur 1, 1 sur 2,... jusqu'à ce que la valeur du champ en tête de groupe change.
Je vais essayer de voire avec une requête et un peu de code mais n'y aurait il pas une solution plus simple?
Merci encore
garsflo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2011, 20h30   #4
Membre Expert
 
Avatar de keita
 
Homme
Inscription : novembre 2002
Messages : 879
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Côte d'Ivoire

Informations forums :
Inscription : novembre 2002
Messages : 879
Points : 1 015
Points : 1 015
Envoyer un message via MSN à keita
bonjour
Pour ce qui est de reinitialiser, on peut faire ceci:
1/Pour l'entete de groupe
Code :
1
2
3
Private Sub EntêteGroupe1_Format(Cancel As Integer, FormatCount As Integer)
    Page = 1
End Sub
2/dans la propriété Saut de page du pied de groupe:
tu mets Après section
3/Dans le control dans le pied de page:
="Page: " & [Page]

Pour ce qui est du " sur " & [Pages] on va y reflechir ensemble.non?

@+
keita est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2011, 17h10   #5
Membre Expert
 
Avatar de keita
 
Homme
Inscription : novembre 2002
Messages : 879
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Côte d'Ivoire

Informations forums :
Inscription : novembre 2002
Messages : 879
Points : 1 015
Points : 1 015
Envoyer un message via MSN à keita
bonsoir
En cherchant sur le forum, j'ai trouvé ceci:
http://www.developpez.net/forums/d99...oupe-page-x-y/
Et plus précisement la proposition de naphta; tu pourras t'y rendre pour plus d'infos.
1/ Mets ça dans ton etat au niveau module;
Code :
1
2
3
4
5
Option Compare Database
Option Explicit
Dim GrpTableauPage(), GrpTableauPages()
Dim GrpNomCourrent As Variant, GrpNomPrecedent As Variant
Dim GrpPage As Integer, GrpPages As Integer
Sur l'évènement au formatage du pied de page:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Sub PiedPage_Format(Cancel As Integer, FormatCount As Integer)
    Dim i As Integer
    If Me.Pages = 0 Then
      ReDim Preserve GrpTableauPage(Me.Page + 1)
      ReDim Preserve GrpTableauPages(Me.Page + 1)
      GrpNomCourrent = Me.CtlRegrpe       ' Nom Du Champ Sur Lequel Le Regroupement est fait
      If GrpNomCourrent = GrpNomPrecedent Then
          GrpTableauPage(Me.Page) = GrpTableauPage(Me.Page - 1) + 1
          GrpPages = GrpTableauPage(Me.Page)
              For i = Me.Page - ((GrpPages) - 1) To Me.Page
                  GrpTableauPages(i) = GrpPages
              Next i
      Else
          GrpPage = 1
          GrpTableauPage(Me.Page) = GrpPage
          GrpTableauPages(Me.Page) = GrpPage
      End If
    Else
      Me!ctlGrpPages = "Page " & GrpTableauPage(Me.Page) & " sur " & GrpTableauPages(Me.Page)
    End If
    GrpNomPrecedent = GrpNomCourrent
End Sub
ctlGrpPages est le nom de la zone de texte dans le pied de page où doit apparaitre la pagination: page: 1 sur 6 par exemple.

@+
keita est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 30/01/2011, 00h25   #6
Nouveau Membre du Club
 
Inscription : mai 2007
Messages : 69
Détails du profil
Informations personnelles :
Âge : 38
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : mai 2007
Messages : 69
Points : 26
Points : 26
Merci beaucoup pour le coup de main keita.
J'ai testé ta solution en m'aidant du lien que tu m'as donné et tout fonctionne à la perfection.
merci encore c'est génial
@+
garsflo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h45.


 
 
 
 
Partenaires

Hébergement Web