pagina nummering per groep

Status
Niet open voor verdere reacties.

mlc1

Gebruiker
Lid geworden
22 mrt 2010
Berichten
100
Hallo allemaal
In het forum werd de vraag al eens eerder door iemand anders gesteld maar niemand had een oplossing


Vraag ik wil op reportvoorbeeld, pagina nummering per groep.

Ik heb onderstaand gevonden maar krijg het niet voor elkaar :confused:

in de code heb ik me! salesperson vervangen door me! houseb (dit is waar bij mij op gegroepeerd wordt)
echter bij het uitvoeren krijg ik een error dat het de expressie houseb niet kan vinden

en als we toch bezig zijn:rolleyes: hoe krijg ik de paginanummers te zien op de paginavoettekst
wie kan mij helpen?
Groet Ron



voor een volledige uitleg van de code ga naar

http://access.mvps.org/access/reports/rpt0013.htm


en dit is de code die er bij hoort
Code:
'************ Code Start *************
' This code was originally written by James H Brooks.
' It is not to be altered or distributed,
' except as part of an application.
' You are free to use it in any application,
' provided the copyright notice is left unchanged.
'
' Code Courtesy of
' James H Brooks
'
Option Compare Database
Option Explicit

Dim GrpArrayPage(), GrpArrayPages()
Dim GrpNameCurrent As Variant, GrpNamePrevious As Variant
Dim GrpPage As Integer, GrpPages As Integer

Private Sub PageFooter_Format(Cancel As Integer, FormatCount As Integer)
Dim i As Integer
  If Me.Pages = 0 Then    
    ReDim Preserve GrpArrayPage(Me.Page + 1)
    ReDim Preserve GrpArrayPages(Me.Page + 1)    
    GrpNameCurrent = Me!Salesperson
    If GrpNameCurrent = GrpNamePrevious Then
        GrpArrayPage(Me.Page) = GrpArrayPage(Me.Page - 1) + 1
        GrpPages = GrpArrayPage(Me.Page)
            For i = Me.Page - ((GrpPages) - 1) To Me.Page
                GrpArrayPages(i) = GrpPages            
            Next i    
    Else
        GrpPage = 1        
        GrpArrayPage(Me.Page) = GrpPage
        GrpArrayPages(Me.Page) = GrpPage    
    End If
  Else
    Me!ctlGrpPages = "Group Page " & GrpArrayPage(Me.Page) & " of " & GrpArrayPages(Me.Page)
  End If
  GrpNamePrevious = GrpNameCurrent
End Sub
'************ Code End *************
 
Leg eerst je probleem uit, voordat je met code gaat zwaaien; ik weet nu niet wat je probleem is...
 
Het probleem:

Ik heb een aantal reports waarvan de pagina nummering doorloopt van 1 naar zoveel.
echter ik heb de reports gegroepeerd en wil elk gegroepeerde report laten beginnen met pagina 1
nu komt het voor dat een gegroepeerd report uit meerdere paginas bestaat
en die wil ik van 1 tot einde laten tellen (1-3 2-3 3-3)
deze functie zit niet in access ingebakken maar kan via een omweg wel uitgevoerd worden zie de code
 
Haal je niet een paar zaken door elkaar? Je praat over verschillende rapporten; niet over een groepering binnen één rapport.
 
Oh ja sorry
ik heb een rapport met diverse groeperingen
groet Ron
 
En waarom werkt de voorbeeldcode niet? Je hoeft toch, als ik de code zo lees, alleen de groepsnaam aan te passen? Maak eventueel een voorbeeldje van jouw db, dat kijkt een heel stuk makkelijker!
 
Het is alweer een tijdje geleden dat ik deze vraag gepost heb
Maar geen oplossing voor het probleem heb gekregen

Iemand die de oplossing heeft ?

Bijvoorbaat dank

Ron
 
Je hebt een 2007 db gepost, en die kan ik op het werk niet lezen. Ik had in eerste instantie ook problemen om de code werkend te krijgen, maar dat kwam omdat ik niet goed doorhad hoe Pages werkt... Je moet ergens in de voettekst nog een (onzichtbaar) tekstvak maken met als besturingselementbron de formule : =Pages. Anders wordt het aantal pagina's niet goed gegenereerd. De naam van het veld waarop je groepeert kun je het beste met Me. (Me punt dus) intypen; dan kun je vervolgens het veld uit de lijst selecteren. Me! werkt wel, maar die controleert niet op de aanwezige veldnamen. En waarom zou je het moeilijk doen als het makkelijk kan?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan