Berichtsbereiche, Gruppierungen und Sortierungen

Wenn Sie ein Abonnement des Magazins 'Access im Unternehmen' besitzen, können Sie sich anmelden und den kompletten Artikel lesen.
Anderenfalls können Sie das Abonnement hier im Shop erwerben.

Berichtsbereiche, Gruppierungen und Sortierungen

Berichte haben verschiedene Bereiche, in die Sie die anzuzeigenden Daten einordnen können. Dazu gehört natürlich der Detailbereich, der für jeden Datensatz der Datenherkunft einmal angezeigt wird, der Berichtskopf und der Berichtsfuß sowie der Seitenkopf und der Seitenfuß. Schließlich kommen noch die entsprechenden Kopf- und Fußbereiche eventuell eingerichteter Gruppierungen hinzu. Dieser Beitrag zeigt, was Sie mit den einzelnen Bereichen anstellen können.

Wenn Sie alles aus Berichten herausholen wollen, müssen Sie die einzelnen Bereiche eines Berichts kennen und wissen, welche Ereignisse zu welcher Phase des Renderns eines Bereichts ausgelöst werden.

Berichtsbereiche

Wenn Sie einen Bericht neu erstellen, zeigt dieser drei Bereiche an – den Seitenkopf, den Detailbereich und den Seitenfuß. Seitenkopf und Seitenfuß werden auf jeder Seite angezeigt, der Detailbereich für jeden darzustellenden Datensatz je einmal.

Wenn Sie Informationen nur am Anfang und am Ende eines Berichts anzeigen wollen, fügen Sie noch die Bereiche Berichtskopf und Berichtsfuß ein – und zwar über den entsprechenden Kontextmenü-Eintrag Berichtskopf/-fuß einer Bereichsüberschrift im Bericht.

Fehlen noch die Gruppierungen: Damit können Sie nach einzelnen Feldern der Datenherkunft eines Berichts gruppieren – also etwa eine Liste von Artikeln nach einer Kategorie. Das ist insbesondere interessant, da Sie für jede Gruppierung auch einen Gruppenkopf und einen Gruppenfuß anlegen können. Der Gruppenkopfbereich könnte etwa den Namen der Kategorie aufführen, der Gruppenfußbereich die Anzahl der in der Kategorie enthaltenen Artikel.

Gruppierungen

In neueren Access-Versionen ab Version 2007 finden Sie den Bereich zum Einrichten von Gruppierungen und Sortierungen unten im Access-Fenster. Mit den beiden Schaltflächen Gruppe hinzufügen und Sortierung hinzufügen fügen Sie Gruppierungen und Sortierungen hinzu. Eine Konstellation mit zwei Gruppierungen sieht etwa wie in Bild 1 aus.

Dialog zum Festlegen von Sortierungen und Gruppierungen

Bild 1: Dialog zum Festlegen von Sortierungen und Gruppierungen

Alternativ zum Betätigen einer der Schaltflächen und anschließendem Auswählen des Feldes, nach dem Sie gruppieren oder sortieren möchten, können Sie das gewünschte Feld in der Entwurfsansicht des Berichts auch direkt aus der Feldliste an die gewünschte Stelle der Gruppierungs- und Sortierungsoptionen ziehen.

Der Unterschied zwischen dem Hinzufügen einer Gruppierung oder Sortierung ist, dass bei der Gruppierung gleich ein Kopfbereich mit hinzugefügt wird. Dies können Sie aber wie in Bild 2 auch für eine Sortierung nachholen und diese so in eine Gruppierung umwandeln.

Festlegen der Bereiche einer Gruppierung

Bild 2: Festlegen der Bereiche einer Gruppierung

Der Beispielbericht sieht nun ohne Steuerelemente bereits wie in Bild 3 aus.

Berichtsbereiche inklusive einer Gruppierung

Bild 3: Berichtsbereiche inklusive einer Gruppierung

Die Einstellungen aus dieser Abbildung sorgen übrigens dafür, dass die zugrunde lie­gen­den Artikel zunächst nach Kategorien und dann innerhalb der Kategorien nach Lie­fe­ran­ten gruppiert werden. Die Daten jeder Lieferanten-Gruppe werden dann noch einer auf­steigenden Sortierung unterzogen.

Eigenschaften von Berichten und Berichtsbereichen

Berichte und die einzelnen Bereiche verwenden einige Eigenschaften, die wichtig für die Gestaltung des Berichts sind. Dummerweise sind die Eigenschaften nicht an einem Ort aufzufinden, sondern über das Eigenschaftsfenster und den soeben vorgestellten Bereich Gruppieren, Sortieren und Summe verteilt. Nachfolgend schauen wir uns diese Eigenschaften im Detail an.

Kopfzeilenbereich und Fußzeilenbereich

Diese beiden Eigenschaften finden Sie im Bereich Gruppieren, Sortieren und Summe. Sie legen damit für Gruppierungen fest, ob diese einen Kopf- und/oder einen Fußbereich anzeigen sollen. Sie können diese Eigenschaften unter VBA mit den Eigenschaften ?Group­Header und ?GroupFooter ansprechen. Die Eigenschaften gehören zum ??GroupLevel-Ob­jekt. Dieses können Sie mit einer Variablen des Typs GroupLevel referenzieren. Dieses GroupLevel-Objekt liefert noch mehr Eigenschaften als nur GroupHeader und GroupFooter zurück. Die folgende Ereignisprozedur legen Sie für die Ereigniseigenschaft Beim Laden des Berichts fest (s. Bild 4):

Erstellen einer Ereignisprozedur, die Bereichseigenschaften beim Laden des Berichts ausgibt

Bild 4: Erstellen einer Ereignisprozedur, die Bereichseigenschaften beim Laden des Berichts ausgibt

Private Sub Report_Load()
     Dim grp As ?GroupLevel
     Set grp = Me.GroupLevel(0)
     Debug.Print "GroupInterval: " & grp.?GroupInterval
     Debug.Print "ControlSource: " & grp.?ControlSource
     Debug.Print "GroupFooter: " & grp.?GroupFooter
     Debug.Print "GroupHeader: " & grp.?GroupHeader

Dies war die Leseprobe dieses Artikels.
Melden Sie sich an, um auf den vollständigen Artikel zuzugreifen.

Bitte geben Sie die Zeichenfolge in das nachfolgende Textfeld ein

Die mit einem * markierten Felder sind Pflichtfelder.

Neues aus unseren Magazinen
Listenfeld: Reihenfolge mehrerer Einträge...

Wir haben bereits in mehreren Beiträgen beschrieben, wie Sie die individuelle Reihenfolge von Elementen einer Tabelle über den Inhalt eines Feldes etwa namens »ReihenfolgeID« einstellen können –... [mehr]

Diagramme mit gefilterten Daten

In Ausgabe 2/2019 haben wir in zwei Artikeln die modernen Diagramme von Access vorgestellt. Im vorliegenen Beitrag zeigen wir Ihnen, wie Sie diese abhängig von den in einem Formular angezeigten... [mehr]

Benutzerverwaltung mit verschlüsselten...

Wenn Sie in einer Access-Anwendung Benutzer verwalten wollen, die sich per Benutzername und Kennwort an die Anwendung anmelden, sollten Sie sehr sensibel mit den in der Anwendung gespeicherten... [mehr]

HTML-Tabellen mit fester Kopfzeile

In den vorherigen Ausgaben von Access im Unternehmen und in der aktuellen Ausgabe arbeiten wir in einigen Beiträgen mit dem Webbrowser-Steuerelement und stellen Daten, die wir mit den Bordmitteln... [mehr]

Flexible HTML-Tabellen mit fester Kopfzeile

Im Beitrag »HTML-Tabellen mit fester Kopfzeile« haben wir gezeigt, wie Sie Daten aus einer bestimmten Abfrage in einem Webbrowser-Steuerelement so anzeigen, dass die Spaltenköpfe oben fixiert... [mehr]

Berechtigungen per HTML verwalten

Im Beitrag »Benutzerverwaltung mit verschlüsselten Kennwörtern« stellen wir eine Lösung vor, in der wir die Berechtigungen von Benutzergruppen an Datenbankobjekten definieren. Dort benötigen wir... [mehr]

Benutzer und Berechtigungen ermitteln

In den Beiträgen »Benutzerverwaltung mit verschlüsselten Kennwörtern« und »Berechtigungen per HTML verwalten« haben wir die Voraussetzungen für eine Benutzerverwaltung geschaffen. Im vorliegenden... [mehr]

Zugriffsrechte mit Datenmakros

Es gibt verschiedene Möglichkeiten, auf Basis des aktuell angemeldeten Benutzers sicherzustellen, dass dieser nur die für ihn vorgesehenen Aktionen mit Daten durchführen darf – beispielsweise durch... [mehr]

Kennwörter generieren

Für den einen oder anderen Zweck möchten Sie vielleicht Kennwörter generieren oder in einer Benutzeroberfläche die Möglichkeit zum Generieren von Kennwörtern anbieten. Wenn Sie etwa Benutzer zu... [mehr]

Neuer Datensatz von Frontend zu Backend

Für manche Themen gibt es keine kurze, prägnante Überschrift. In diesem Fall wollen wir zeigen, wie Sie einen neuen Datensatz anlegen, der in einer temporären Tabelle im Frontend gespeichert wird,... [mehr]