online 1
gast (50)

/ Forum / Datenbanken

DatenbankenDatenbanken

Fragevon ThomasL. vom 27.04.2019, 09:53 Options

Inhaltsverzeichniss in Access Bericht

Hallo,

Es gibt viele Interessante Forumeinträge zum Thema Inhaltsverzeichniss in Accessberichten aber leider hat keine geholfen :(
Ich habe folgendes Problem:

Ein Bericht von mir hat einen Mehrseitigen Berichtskopf, im Detailbereich werden meine Daten aus Abfrage angezeigt, und im Berichtsfuß noch mal ein Mehrseitiger Bereich.

Nun soll ein Inhaltsverzeichnis im Berichtskopf eingebaut werden.
Meine Idee dazu:
Ich füge zu jeder "Überschrift" einen versteckten Marker (Textfeld) mit eindeutigem Namen hinzu (Kat1, Kat2,...). Als Steuerelementinhalt: =[Seite].
Dazu eine temporäre Tabelle (tblInhalt) wo der Name des Markers + die dazugehörige Seitennummer reinsoll.
Den Inhalt der Tabelle tblInhalt dann in einen extra Bericht (repInhalt) verpackt als Unterbericht in den Berichtskopf des eigentlichen Berichts
Im Bericht selber wird folgender Code ausgeführt:


Private Sub Berichtskopf_Format (Cancel As Integer, FormatCount As Integer)

Dim sqlindex
Dim ctl As Control
Dim n, a, b As String

    For Each ctl In Me.Controls
        If ctl.ControlType = acTextBox Then
            a = ctl.Name
            n = Mid(a, 1, 3)
                If n = "Kat" Then
                    b = ctl.Value
                    sqlindex = "INSERT INTO tblInhalt (Marker,Seite) SELECT " _
                    & Chr(34) & a & Chr(34) & "," & Chr(34) & b & Chr(34) & ";"
                    CurrentDb.Execute sqlindex, dbfailonerror
                End If
        End If
    Next ctl
End Sub


Ich hab mir also überlegt "suche im Bericht alle Textfelder die mit Name "Kat" beginnen und schreibe den gesamten Namen und den Wert des Textfeldes in die Tabelle tblInhalt"

In der Theorie ganz nett nur in der Praxis ein wenig verzwickt, da der Code mehrere male durchläuft und somit "Kat1" mit Seite 1,2,3,... in die Tabelle schreibt.
Mir sind leider die Ideen ausgegangen und wahrscheinlich lese ich immer wieder über den sicherlich offensichtlichen Fehler drüber.
Irgend Jemand eine Idee wie ich das Lösen kann?

Besten Dank im Voraus für eure Bemühungen


Antwort schreiben

Antwort 1 von Roadrunner90 vom 23.06.2019, 14:30 Options

Hallo,

ich definiere mir für solche Aktionen einen Merker, den setze ich nach dem 1. Durchlauf auf 1 und führe die Aufbereitung nur duche wenn Merker <> 1

Gruß Rudolf

Antwort 2 von Teddy7 vom 24.06.2019, 20:01 Options

Wenn Du die temporäre Tabelle nur da füllst, wo die Überschrift angelistet wird, müßte es gehen.
Also z.B. Du hast Deinen Bericht gruppiert nach Artikel.
Dann hast Du einen Bereich Artikel-Kopf und Artikel-Fuß.
Im Bereich Artikel-Kopf könntest Du dann im Formatieren-Ereignis die aktuelle Seitenzahl und den Artikeltext (also die Überschrift) in die temporäre Tabelle schreiben.
Im Berichtsfuß kannst Du dann den Unterbericht im Berichtskopf aktualisieren lassen
Bericht!Berichtskopf!Unterberichtsname!requery

Gruß
Teddy

Ähnliche Themen

Access Bericht mit mehreren Abfragen
golo108  19.01.2007 - 293 Hits - 7 Antworten

mehrseitigen Bericht mit Access versenden
Sandy12  08.03.2007 - 139 Hits -

Berichte mit access
Rolly  16.07.2007 - 136 Hits - 1 Antwort

Access: mehrere Abfragen in einen Bericht integrieren
Tumulus  05.04.2008 - 162 Hits - 3 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026