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 6/2002.

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

Listenfelder von A-Z

André Minhorst, Duisburg

Die Möglichkeiten der Darstellung von Daten lassen sich grob in zwei Arten einteilen: Die Darstellung mehrerer Datensätze gleichzeitig in Listenform und die Anzeige der Details zu einem bestimmten Datensatz. Eine Kombination der beiden Varianten ist die Anzeige einer Liste mit mehreren Datensätzen und unterschiedlichen Feldern. Unter Access gibt es drei Möglichkeiten zur Realisierung einer solchen Anzeige: die meist in Form von Unterformularen verwendete Datenblattansicht, die Anzeige der Datensätze per Endlosformular sowie ein spezielles Steuerelement namens Listenfeld. Im vorliegenden Beitrag erfahren Sie, wie Sie letzteres zur Datenanzeige verwenden können und was sich noch alles damit bewerkstelligen lässt.

Anwendungsbereiche von
Listenfeldern

Listenfelder unterscheiden sich in einem wesentlichen Punkt von den beiden anderen Möglichkeiten zur Anzeige von Daten in Listenform: Die angezeigten Daten können nicht direkt im Listenfeld geändert werden. Sie können zwar einen Eintrag auswählen und seine Detaildaten in einem separaten Formular anzeigen und dort bearbeiten, über den gleichen Weg neue Datensätze anlegen oder Datensätze über eine Ereignisprozedur löschen - aber das Listenfeld selbst dient nur der Anzeige und der Auswahl von Datensätzen.

In der Auswahl von Daten liegt einer der großen Vorteile von Listenfeldern: Im Gegensatz zu Daten in der Endlos- und Datenblattansicht von Formularen bieten sie die Möglichkeit der Mehrfachauswahl.

Die im vorliegenden Beitrag beschriebenen Beispiele beziehen sich sämtlich auf die Tabellen der Nordwind-Datenbank. Wenn Sie schnell mit den Beispielen loslegen möchten, erstellen Sie einfach eine neue leere Datenbank und importieren dann die Tabellen aus der Nordwind-Datenbank. (

Eigenschaften von Listenfeldern

Zum Kennenlernen der wichtigsten Eigenschaften von Listenfeldern legen Sie ein neues Listenfeld an.

Dazu benötigen Sie zunächst ein neues Formular in der Entwurfsansicht. Das Listenfeld finden Sie in der Toolbox, die Sie auf mehreren Wegen einblenden können:

  • durch Mausklick mit der rechten Maustaste in das Formular und anschließende Auswahl des Eintrages Toolbox
  • über den Menübefehl Ansicht ( Toolbox
  • über die Schaltfläche Toolbox in der Symbolleiste
  • In der Toolbox finden Sie die Schaltfläche Listenfeld, mit der Sie auf zwei Arten ein neues Listenfeld erstellen können:

  • durch einfachen Klick auf die Schaltfläche und anschließendes Aufziehen des Listenfeldes in der gewünschten Größe (s. Abb. 1)
  • per Drag & Drop der Schaltfläche in den Formularentwurf
  • Abb. 1: Anlegen eines neuen Listenfeldes

    Hier ist die erste Variante zu bevorzugen, da Sie direkt die Größe des Listenfeldes festlegen können.

    Access fügt neuen Listenfeldern immer unmittelbar ein Bezeichnungsfeld hinzu. Manchmal ist das nützlich, aber in der Regel möchten Sie das Bezeichnungsfeld (wenn Sie überhaupt eines benötigen) in eine andere Position relativ zum Listenfeld bewegen.

    Das funktioniert nur, wenn Sie das Bezeichnungsfeld markieren und es dann mit dem Mauszeiger über das schwarze Viereck oben links nehmen und verschieben.

    Da das Nerven kostet, löschen Sie am besten das Bezeichnungsfeld und erstellen ein neues, das nicht an das Listenfeld gebunden ist und sich unabhängig platzieren lässt. Am schnellsten geht das durch Markieren des Bezeichnungsfeldes und Betätigen der Tastenkombinationen Strg + X und Strg + V (ausschneiden und einfügen).

    Datensatzherkunft

    Mit den beiden Eigenschaften Datensatzherkunft (engl. RowSource) und Herkunftstyp (engl. RowSourceType) legen Sie Art und Aussehen der zugrunde liegenden Daten fest.

    Die Eigenschaft Herkunftstyp kennt dabei drei Werte:

  • Tabelle/Abfrage
  • Wertliste
  • Feldliste
  • Alle drei erfordern die Angabe einer Information für die Eigenschaft Datensatzherkunft.

    Es gibt noch eine vierte Variante, für die das nicht gilt: Wenn Sie eine Funktion zum Festlegen der anzuzeigenden Daten verwenden, geben Sie den Funktionsnamen für die Eigenschaft Herkunftstyp an und lassen die Eigenschaft Datensatzherkunft leer.

    Funktionen zum Füllen von Kombinations- und Listenfeldern müssen einem ganz bestimmten Format entsprechen. Weitere Informationen hierzu finden Sie in dem Beitrag Kombinations- und Listenfelder füllen in der Ausgabe 4/2002 oder im PDF-Format auf der Heft-CD. (

    Tabellen und Abfragen

    Wenn Sie für die Eigenschaft Herkunftsart den Wert Tabelle/Abfrage auswählen, müssen Sie für die Eigenschaft Datensatzherkunft das gewünschte Objekt aus einer Liste auswählen (s. Abb. 2).

    Alternativ können Sie eine eigene Abfrage erstellen, indem Sie auf die Schaltfläche mit den drei Punkten (...) klicken. Nach der Erstellung der Abfrage können Sie diese wie eine ganz normale Abfrage speichern oder einfach die resultierende SQL-Anweisung als Wert der Eigenschaft beibehalten.

    Feldlisten

    Die beiden Eigenschaften ermöglichen die für manche Fälle wichtige Anzeige aller Felder einer Tabelle. Stellen Sie die Eigenschaft Herkunftsart auf den Wert Feldliste und die Eigenschaft Datensatzherkunft auf den Namen der gewünschten Tabelle ein.

    Abb. 2: Datensatzherkunft eines Listenfeldes

    Wertlisten

    Wertlisten enthalten einen oder mehrere Werte, die nicht an Datenobjekte wie Tabellen oder Abfragen gebunden sind. Wenn die Eigenschaft Herkunftsart auf Wertliste eingestellt ist, können Sie der Eigenschaft Datensatzherkunft die gewünschten Daten in Form einer durch Semikola getrennten Liste zuweisen.

    Spalten des Listenfeldes

    In der Grundeinstellung zeigen Listenfelder Daten nur in einer Spalte an. Da die Datensatzherkunft aber oft mehr als nur eine Spalte enthalten wird, können Sie die Konfiguration der Spalten mit den Eigenschaften Spaltenanzahl und Spaltenbreiten vornehmen.

    Abb. 3: Listenfeld mit Artikelnummer und -name

    Wenn Sie beispielsweise die Felder Artikel-Nr und Artikelname der Tabelle Artikel in einem Listenfeld anzeigen möchten, stellen Sie die Spaltenanzahl auf den Wert 2 und die Spaltenbreiten auf den Wert 1cm;3cm ein (s. Abb. 3).

    Wenn Sie mehrere Spalten anzeigen, können Sie auf die Angabe der Breite für die letzte Spalte verzichten. Die Breite der letzten Spalte ergibt sich immer durch die Differenz aus der Breite des Listenfeldes und der Gesamtbreite der anderen Spalten. Das gilt nicht, wenn die Listenfeldbreite so klein ist, dass mindestens die letzte Spalte nicht mehr angezeigt wird - in diesem Fall erscheint eine Bildlaufleiste, mit der Sie zu den nicht sichtbaren Spalten scrollen können. (

    Reihenfolge der angezeigten Felder

    Listenfelder verwenden für die Felder immer die in der Datensatzherkunft vorgefundene Reihenfolge. Wenn Sie also beispielsweise einige Felder der Tabelle Artikel anzeigen möchten, aber in einer anderen Reihenfolge als dort angegeben, müssen Sie zunächst eine Abfrage mit den Feldern in der richtigen Reihenfolge erstellen.

    Spaltenüberschriften

    In manchen Fällen macht es Sinn, die Feldnamen in Form von Spaltenüberschriften anzuzeigen. Dazu müssen Sie lediglich die Eigenschaft Spaltenüberschriften auf den Wert Ja setzen.

    Spaltennamen sind allerdings oft eher zweckmäßig als schön und sollen dem Anwender sicher nicht als Spaltenüberschrift eines Listenfeldes präsentiert werden. Daher gibt es zwei Möglichkeiten:

  • Sie verzichten auf die eingebauten Spaltenüberschriften und verwenden stattdessen über dem Listenfeld angeordnete Bezeichnungsfelder.
  • Sie bearbeiten die Datensatzherkunft so, dass eine ansprechende Spaltenüberschrift herauskommt.
  • Der erste Vorschlag bietet designtechnisch sicher eine Menge mehr Möglichkeiten, während der zweite sicher leichter zu realisieren ist.

    Geben Sie einfach im Entwurf der Datensatzherkunft (also der Tabelle oder der Abfrage) den gewünschten Wert für die Eigenschaft Beschriftung des Feldes an.

    Wenn Sie als Herkunftsart nicht Tabelle/Abfrage gewählt haben, müssen Sie bei Aktivieren der Spaltenüberschriften beachten, dass jeweils der erste Eintrag bzw. die ersten Einträge (bei mehreren Spalten) der Datensatzherkunft als Spaltenüberschrift verwendet wird bzw. werden.

    Ausblenden von Spalten

    Wenn Sie nicht alle Felder der Datensatzherkunft im Listenfeld anzeigen möchten, können Sie einzelne Felder ausblenden. Dazu müssen Sie lediglich die Spaltenbreite für die auszublendenden Spalten auf den Wert 0cm setzen.

    Mehrfachauswahl

    Wie Sie sicher beim Herumprobieren bemerkt haben, können Sie in einem Listenfeld auch Einträge markieren.

    In der Standardeinstellung ist nur die Markierung jeweils eines Eintrags möglich. Sie können allerdings auch mehrere Einträge gleichzeitig markieren.

    Dazu stellen Sie die Eigenschaft Mehrfachauswahl einfach auf einen anderen Wert als Keine ein.

    Die Option Einzeln ermöglicht die Auswahl der gewünschten Listenfeldeinträge per Mausklick auf die einzelnen Einträge. Unerwünschte Markierungen deaktivieren Sie mit einem weiteren Mausklick auf den betroffenen Eintrag.

    Mit der Option Erweitert erreichen Sie die gleiche Funktionalität wie z. B. im Windows Explorer. Sie können mehrere aufeinander folgende Einträge durch Anklicken des ersten sowie Anklicken des letzten Eintrages bei gedrückter Umschalttaste auswählen, weitere Einträge bei gedrückter Strg-Taste hinzufügen und auf die gleiche Weise entfernen.

    Listenfelder in der Praxis

    In der Praxis dienen Listenfelder oft als Bindeglied zwischen dem Suchen von Datensätzen und deren Bearbeitung in weiteren Formularen.

    Mittels unterschiedlicher Text- und Kombinationsfelder lassen sich leicht Such- und Filterkriterien für Abfragen festlegen, deren Ergebnisse in Listenfeldern angezeigt werden.

    Über die Ereigniseigenschaften Beim Klicken oder Beim Doppelklicken lassen sich leicht weitere Formulare mit Detailinformationen zu den gewünschten Datensätzen anzeigen.

    Eine weitere Anwendung findet sich in der Anzeige von m:n-Beziehungen. Um die Nordwind-Datenbank weiterhin als Quelle für Beispielanwendungen zu nutzen, lernen Sie im Folgenden eine Anwendung kennen, die der Zuordnung von bestimmten Artikeln zu den entsprechenden Kunden dient.

    Große Firmen haben unter Umständen ein so großes Angebot, dass nicht jedem Kunden alle Artikel angeboten werden. Der eine Kunde mag vielleicht eher exklusive Artikel, während der andere eher große Mengen preisgünstiger Produkte bevorzugt.

    Von Listenfeld zu Listenfeld

    Im folgenden Beispiel legen Sie ein Formular mit zwei Listenfeldern an, die zusammengefasst alle Artikel anzeigen. Je nach dem aktuellen Kunden werden die Artikel entweder im linken oder im rechten Listenfeld angezeigt. Der Benutzer kann die Einträge auf unterschiedliche Weise zwischen den beiden Listenfeldern hin- und herbewegen.

    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:

    Verwandte Beiträge:

    Listenfeld und Details in einem Formular

    Kontextmenüs von A bis Z

    Zugriff auf Daten in Formularen und Steuerelementen

    Das Optionsgruppen-Steuerelement

    TreeView-Elemente im Griff

    Flexible Datumstextfelder

    Tipps und Tricks

    Registersteuerelemente von A-Z

    Individuelle Datenauswahl

    Temporäre Datensatzgruppen

    Access 2007: Bilder und Schaltflächen

    © 2003-2015 André Minhorst Alle Rechte vorbehalten.