Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Achtung: Dies ist nicht der vollständige Artikel, sondern nur ein paar Seiten davon. Wenn Sie hier nicht erfahren, was Sie wissen möchten, finden Sie am Ende Informationen darüber, wie Sie den ganzen Artikel lesen können.

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 3/2011.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Zusammenfassung

Erfahren Sie, wie Sie Unterberichte ein- und ausblenden, SQL-Anweisungen per VBA zusammenstellen und XML-Dokumente auf Gültigkeit hin prüfen.

Techniken

Berichte, VBA, SQL, XML

Voraussetzungen

Access 2000 und höher

Beispieldateien

TippsUndTricks200103.mdb

Shortlink

www.access-im-unternehmen.de/783

Tipps und Tricks

André Minhorst, Duisburg

In dieser Ausgabe gibt es mal wieder ein paar Tipps und Tricks rund um die Arbeit mit Microsoft Access. Im ersten Tipp erfahren Sie, wie Sie Unterberichte in einem Bericht wahlweise ein- oder ausblenden. Der zweite Tipp verrät, wie Sie die Zusammenstellung von SQL-Ausdrücken per VBA vereinfachen. Und schließlich zeigen wir Ihnen, wie Sie XML-Dokumente auf ihre Gültigkeit hin prüfen können.

Unterberichte nach Bedarf

Unterberichte kommen immer dann zum Einsatz, wenn ein Bericht Daten aus mehreren Tabellen gleichzeitig anzeigen soll, die nicht alle hierarchisch miteinander verknüpft sind. Wenn Sie zum Beispiel alle Ansprechpartner und alle Projekte zu einem Kunden in einem Bericht anzeigen möchten, erledigen Sie dies am besten mit zwei entsprechenden Unterberichten.

Manchmal möchten Sie den Bericht aber vielleicht nicht mit allen enthaltenen Unterberichten ausgeben - etwa, weil einer der Unterberichte Informationen enthält, die Sie gerade nicht benötigen.

In diesem Fall brauchen Sie zwei Dinge: Ein Formular, mit dem Sie die gewünschten Unterberichte selektieren, und einen Bericht, der die Unterberichte entsprechend dieser Auswahl ein- oder ausblendet.

Der Bericht dieses Beispiels soll drei Unterberichte enthalten, die vor dem Öffnen über ein Formular namens frmUnterberichte aktiviert oder deaktiviert werden sollen. Dieses Formular sieht im Entwurf wie in Abb. 1 aus. Die Kontrollkästchen heißen chk1, chk2 und chk3, die Schaltfläche cmdBericht. Ein Klick auf die Schaltfläche löst die folgende Ereignisprozedur aus, die schlicht den Bericht in der Seitenansicht öffnet:

pic001.png

Abb. 1: Das Formular zum Aktivieren und Deaktivieren der Unterberichte

Private Sub cmdBericht_Click()

    DoCmd.OpenReport "rpt", acViewPreview

End Sub

Die Unterberichte namens srp1, srp2 und srp3 sind zu Beispielzwecken recht schlicht aufgebaut und enthalten jeweils nur ein Bezeichnungsfeld (s. Abb. 2).

pic003.png

Abb. 2: Einer der drei Unterberichte

Der Hauptbericht heißt rptBericht und sieht im Entwurf wie in Abb. 3 aus. Dort sehen Sie drei Textfelder, welche die Überschriften der Unterberichte darstellen, dazwischen haben wir die Unterberichte eingefügt.

pic004.png

Abb. 3: Der Hauptbericht mit den drei Unterberichten

Wichtig ist, dass Sie die Textfelder und die Unterberichte direkt untereinander einfügen. Wenn Sie anderenfalls zwischen jedem Steuerelement etwa einen halben Zentimeter Platz lassen und dann den mittleren Bericht ausblenden, entsteht eine unschöne Lücke.

Wenn Sie nun in die Seitenansicht wechseln, sieht der Bericht wie in Abb. 4 aus - alle Überschriften und Unterberichte werden unmittelbar untereinander angezeigt.

pic002.png

Abb. 4: Berichtsvorschau der Unterberichte

Genau genommen können Sie die Überschriften auch in die Unterberichte integrieren und stattdessen einfach leere Textfelder zwischen den Berichten platzieren. Die Hauptaufgabe der Textfelder ist nämlich die eines Platzhalters zwischen den Berichten.

Wie nun blenden wir die einzelnen Berichtsbereiche aus? Die notwendigen Informationen hält ja das Formular frmUnterberichte bereit. Der Bericht muss diese also beim Öffnen selbst auswerten, was wie in der folgenden Prozedur geschieht:

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

    With Forms!frmUnterberichte

        Me!txt1.Visible = !chk1

        Me!srp1.Visible = !chk1

        Me!txt2.Visible = !chk2

        Me!srp2.Visible = !chk2

Sie haben das Ende des frei verfügbaren Teils des Artikels erreicht. Lesen Sie weiter, um zu erfahren, wie Sie den vollständigen Artikel lesen und auf viele hundert weitere Artikel zugreifen können.

Sind Sie Abonnent?Jetzt einloggen ...
 

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

© 2003-2015 André Minhorst Alle Rechte vorbehalten.