Avatar billede spejder_leon Nybegynder
30. januar 2004 - 18:17 Der er 4 kommentarer og
1 løsning

Sidetal pr. data hoved i rapport

Skal have nulstillet min sidetal tæller i når jeg påbegynder en ny dato i en sekvens af op til uendelig mange datoer.

sådan at jeg kan se at der er tale om side 1 for den dato.
Avatar billede nih Novice
30. januar 2004 - 22:13 #1
Jeg ved ikke om de nye versioner af Access har en sådan indbygget funktion.
Jeg har engang nuppet denne kode, som virker i 97 frem til 2003:

Option Compare Database
Option Explicit

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


Private Sub Sidefodsektion_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!StofId
    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.txtSideNr = "Side " & GrpArrayPage(Me.Page) & " af " & GrpArrayPages(Me.Page)
End If
  GrpNamePrevious = GrpNameCurrent
End Sub



stofId er det felt der nulstiller sidetælleren
txtsidenr er et ubunden tekstbox i sidefoden

koden skal lægges i raportfod vedformatering

Niels
Avatar billede spejder_leon Nybegynder
31. januar 2004 - 14:22 #2
kan ikke lige se hvad if-then-else der spørger :
If Me.Pages = 0 Then
skal gøre, uden virker det, men kan godt også se at det er noget skidt hvis der ikke er noget data.

ihvertfald skal tildelingen af teksten flyttes:
Me.txtSideNr = "Side " & GrpArrayPage(Me.Page) & " af " & GrpArrayPages(Me.Page)
Avatar billede spejder_leon Nybegynder
31. januar 2004 - 16:57 #3
men det er nu endt med at virke, kontrollerer om der kun er nul poster, og hvis ikke vises, med korrekt resultat,.
Avatar billede nih Novice
31. januar 2004 - 21:46 #4
Den første "if" køres INDEN rapporten udskrives og initialisere variablerne grparraypage og grparraypages.
"else" delen køres kun når rapporten udskrives og udskriver grparraypage og grparraypages på de rigtige steder.
Avatar billede nih Novice
31. januar 2004 - 21:48 #5
I nogle tilfælde hvor rapport formateringen ikke kører flere gange har jeg også oplevet at koden ikke virker, men har løst det ved at indsætte alm. sidenummereing i en skjult textbox.

Takker for pts.
Niels
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester