Warum noch ein Access-Buch?
Für wen ist das Buch?
Jetzt bestellen
+ direkter Download des eBooks!
Nur EUR 59,95!
Fehler gefunden?
Bitte melden!
Wünsche an das Buch?
Her damit!
Was denken die Leser über dieses Buch?
Lesen Sie aktuelle Rezensionen!
Kapitel des noch nicht veröffentlichten Buchs zum Downloaden, Probelesen und Kommentieren
Beispieldatenbanken
Zusätzliches Material

Das Buch im HTML-Format

Für unbestimmte Zeit bieten Addison-Wesley und André Minhorst den kompletten Inhalt des Buchs als Download an. Schauen Sie rein und informieren Sie sich über den Inhalt! Und wenn Ihnen das Buch nützlich erscheint und Sie glauben, dass Sie etwas gelernt haben oder durch das Gelesene sogar etwas Zeit und somit Geld bei Ihrer Arbeit einsparen konnten, können Sie sich ja beim Autor und beim Verlag revanchieren - beispielsweise durch den Kauf dieses Buchs.

Am schönsten wäre es natürlich, wenn Sie das Buch direkt hier bestellen - Sie erhalten das Buch dann direkt vom Verlag, und der Autor und Verlag haben dann noch mehr davon, als wenn Sie es anderswo kaufen.

Danke für Ihr Interesse!

15.7.2 Eigene Ereignisse anlegen

15.8 Benutzerdefinierte Auflistungen mit dem Collection-Objekt

Viele VBA-Objekte sind Bestandteil von Auflistungen und enthalten selbst wiederum Auflistungen mit anderen Objekten. Ein Beispiel aus der DAO-Bibliothek ist das Database-Objekt, das eine TableDefs-Auflistung mit TableDef-Objekten enthält, die wiederum eine Fields-Auflistung mit Field-Objekten bereitstellt.

Diese Möglichkeit ist sehr interessant, da man damit leicht auf die komplette Sammlung enthaltener Objekte zugreifen kann. Das sieht dann beispielsweise so wie im folgenden Listing aus. Die Routine TabellenUndFelder gibt alle Tabellen der aktuellen Datenbank inklusive Feldnamen aus. Dabei durchläuft sie zwei For Each-Schleifen: die erste bearbeitet die Auflistung TableDefs des Database-Objekts, die zweite die Auflistung Fields des aktuellen TableDef-Objekts. Die Ausgabe sieht wie in Abbildung 15.10 aus.

Public Function TabellenUndFelder()

    Dim db As DAO.Database
    Dim tdf As DAO.TableDef
    Dim fld As DAO.Field

    Set db = CurrentDb

    For Each tdf In db.TableDefs
        Debug.Print tdf.Name
        For Each fld In tdf.Fields
            Debug.Print " " & fld.Name
        Next fld
        Debug.Print "================="
    Next tdf

    Set db = Nothing

End Function

Listing 15.26: Ausgabe von Tabellen und Feldern per Auflistung

Auflistungen mit dem Collection-Objekt

Das Collection-Objekt ermöglicht die benutzerdefinierte Verwendung von Auflistungen, die nicht nur Zahlen oder Zeichenketten, sondern komplexe Objekte enthalten können. Diese können auch wieder Auflistungen enthalten, sodass sich die oben dargestellte Technik zum Durchlaufen von einfachen oder verschachtelten Auflistungen realisieren lässt (siehe Abschnitt 15.8.2, »Benutzerdefinierte Auflistungsklassen«).

Abbildung 15.10: Ausgabe verschachtelter For Each-Schleifen über zwei Collections

Bevor Sie sich an ein solches - zugegebenermaßen relativ komplexes - Beispiel begeben, lernen Sie an einem einfacheren Beispiel den grundlegenden Umgang mit dem Collection-Objekt kennen.

Nächster Abschnitt:

15.8.1 Auflistungen selbst gemacht

Unterabschnitte des aktuellen Abschnitts:

    15.8.1 Auflistungen selbst gemacht

    15.8.2 Benutzerdefinierte Auflistungsklassen

    15.8.3 Nachbildung relationaler Beziehungen per Auflistungsklasse

    15.8.4 »Echtes« Objekt mit Auflistung

© 2006-2008 André Minhorst Alle Rechte vorbehalten.