Wenn Sie mit relationalen Daten in Access arbeiten, müssen Sie häufig mehrere Tabellen oder Abfragen auf demselben Formular anzeigen. Sie können beispielsweise Kundendaten aus einer Tabelle und Kundenauftragsinformationen aus einer anderen Tabelle gleichzeitig anzeigen. Unterformulare erleichtern dies, und Access bietet Ihnen mehrere schnelle Möglichkeiten, sie zu erstellen.
Was möchten Sie tun?
- Mehr über Unterformate erfahren
- Erstellen oder Hinzufügen eines Unterformulars
- Erstellen eines Formulars mit einem Unterformular unter Verwendung des Formular-Assistenten
- Hinzufügen eines oder mehrerer Unterformulare zu einem vorhandenen Formular mithilfe des Unterformular-Assistenten
- Erstellen eines Unterformulars durch Ziehen eines Formulars in ein anderes
- Öffnen eines Unterformulars in einem neuen Fenster in der Entwurfsansicht
- Ändern der Standardansicht eines Unterformulars
- Hinzufügen von verknüpften Daten zu einem Formular ohne Erstellung eines Unterformulars
Mehr über Unterformate erfahren
Ein Unterformular ist ein Formular, das in ein anderes Formular eingefügt wird. Das primäre Formular wird als Hauptformular bezeichnet, und das eingeschlossene Formular wird als Unterformular bezeichnet. Eine Formular-Unterformular-Kombination wird manchmal als hierarchisches Formular, master-/Detailformular oder als über- und untergeordnetes Formular bezeichnet.
Unterformulare funktionieren besonders gut, wenn Sie Daten aus Tabellen oder Abfragen anzeigen möchten, die eine 1:n-Beziehung aufweisen. Bei diesem Beziehungstyp entspricht der Primärschlüsselwert jedes Datensatzes in der Primärtabelle dem Wert im übereinstimmenden Feld oder den Feldern vieler Datensätze in der verknüpften Tabelle. Sie können z. B. ein Formular erstellen, in dem Mitarbeiterdaten und ein Unterformular angezeigt werden, in dem die Aufträge der einzelnen Mitarbeiter angezeigt werden. Sie können beispielsweise ein Formular erstellen, das Mitarbeiterdaten anzeigt und ein Unterformular enthält, das die Bestellungen jedes Mitarbeiters anzeigt. Die Daten in der Tabelle Orders sind die "n"-Seite der Beziehung, da jeder Mitarbeiter mehrere Aufträge haben kann.
Das Hauptformular zeigt Daten von der "1"-Seite der Beziehung an.
Das Unterformular zeigt Daten von der "n"-Seite der Beziehung an.
Bei dieser Art Formular sind das Hauptformular und das Unterformular so verknüpft, dass das Unterformular nur Datensätze anzeigt, die mit dem aktuellen Datensatz im Hauptformular verknüpft sind. Wenn z. B. das Hauptformular die Informationen zu "Nancy Freehafer" anzeigt, zeigt das Unterformular nur Ihre Bestellungen an. Wenn die Verknüpfung des Formulars und des Unterformulars aufgehoben würde, würde das Unterformular alle Bestellungen anzeigen, nicht nur die von Nancy.
In der folgenden Tabelle werden Begriffe definiert, die sich auf Unterformulare beziehen. Access verarbeitet die meisten Details, wenn Sie die Verfahren in diesem Artikel verwenden, aber es ist hilfreich zu wissen, was hinter den Kulissen passiert, wenn Sie später Änderungen vornehmen müssen.
| Begriff | Definition |
|---|---|
| Unterformular-Steuerelement | Das Steuerelement, mit dem ein Formular in einem Formular eingebettet wird. Sie können sich das Unterformular-Steuerelement als Ansicht eines anderen Objekts in der Datenbank vorstellen, gleichgültig, ob es sich um ein Formular, eine Tabelle oder eine Abfrage handelt. Das Unterformular-Steuerelement enthält Eigenschaften, mit deren Hilfe Sie die im Steuerelement angezeigten Daten mit den Daten im Hauptformular verknüpfen können. |
| "Herkunftsobjekt"-Eigenschaft | Die Eigenschaft des Unterformular-Steuerelements, das bestimmt, welches Objekt im Steuerelement angezeigt wird. |
| Datenblatt | Eine einfache Anzeige von Daten in Zeilen und Spalten, ähnlich einem Tabellenblatt. Das Unterformular-Steuerelement zeigt ein Datenblatt an, wenn das Quellobjekt eine Tabelle oder Abfrage ist, oder wenn das Quellobjekt ein Formular ist, dessen Default View -Eigenschaft auf Datasheetfestgelegt ist. In diesem Fall wird das Unterformular gelegentlich nicht als Unterformular, sondern als Datenblatt oder Unterdatenblatt bezeichnet. |
| "Verknüpfen von"-Eigenschaft | Die -Eigenschaft des Unterformular-Steuerelements, das angibt, welches Feld bzw. welche Felder im Unterformular es mit dem Hauptformular verknüpfen. |
| "Verknüpfen nach"-Eigenschaft | Die -Eigenschaft des Unterformular-Steuerelements, das angibt, welches Feld bzw. welche Felder im Hauptformular es mit dem Unterformular verknüpfen. |
Hinweis
- Zur Erzielung optimaler Ergebnisse richten Sie zunächst Tabellenbeziehungen ein, bevor Sie die in diesem Artikel erläuterten Verfahren ausführen. Auf diese Weise kann Access die Verknüpfungen zwischen Unter- und Hauptformularen automatisch erstellen. Klicken Sie zum Anzeigen, Hinzufügen oder Ändern von Beziehungen zwischen den Tabellen in Ihrer Datenbank auf der Registerkarte Datenbanktools in der Gruppe Beziehungen auf Beziehungen.
- Wenn ein Unterformular-Steuerelement über ein Formular als Quellobjekt verfügt, enthält es die Felder, die Sie auf dem Formular platzieren. Sie können es als einzelnes Formular, fortlaufendes Formular oder Datenblatt anzeigen. Ein Vorteil der Basis eines Unterformulars auf einem Formularobjekt besteht darin, dass Sie dem Unterformular berechnete Felder hinzufügen können, z
[Quantity] * [Unit price]. B. . - Sie können ein Datenblatt oder eine PivotChart-Ansicht in ein Formular einfügen, indem Sie ein Unterformular-Steuerelement erstellen, dessen Herkunftsobjekt eine Tabelle oder Abfrage ist. Weitere Informationen finden Sie im Abschnitt Hinzufügen von verknüpften Daten zu einem Formular ohne Erstellung eines Unterformulars.
Erstellen oder Hinzufügen eines Unterformulars
Anhand der folgenden Tabelle können Sie herausfinden, welches Verfahren für Ihre Situation optimal geeignet ist.
| Szenario | Empfohlenes Verfahren |
|---|---|
| Access soll sowohl ein Hauptformular als auch ein Unterformular erstellen und das Unterformular mit dem Hauptformular verknüpfen. | Erstellen eines Formulars mit einem Unterformular unter Verwendung des Formular-Assistenten |
| Sie möchten ein vorhandenes Formular als Hauptformular verwenden, möchten aber, dass Access ein neues Unterformular erstellt und dieses dem Hauptformular hinzufügt. | Hinzufügen von einem oder mehreren Unterformularen zu einem vorhandenen Formular mithilfe des Unterformular-Assistenten |
| Sie möchten ein vorhandenes Formular als Unterformular verwenden und diesem Formular ein oder mehrere vorhandene Formulare als Unterformulare hinzufügen. | Erstellen eines Unterformulars durch Ziehen eines Formulars in ein anderes |
Erstellen eines Formulars mit einem Unterformular unter Verwendung des Formular-Assistenten
Mit dieser Prozedur wird mithilfe des Formular-Assistenten eine neue Kombination aus Formular und Unterformular erstellt. Dies ist auch der schnellste Einstieg, wenn Sie die Formulare, die Sie als Hauptformular oder Unterformular verwenden möchten, noch nicht erstellt haben.
Klicken Sie auf der Registerkarte Erstellen in der Gruppe Formulare auf Formular-Assistent.
Wählen Sie auf der ersten Seite des Assistenten in der Dropdownliste Tabellen/Abfragen eine Tabelle oder Abfrage aus. Um in diesem Beispiel ein Mitarbeiterformular zu erstellen, in dem Bestellungen für jeden Mitarbeiter in einem Unterformular angezeigt werden, wählen Sie Tabelle: Mitarbeiter (die "1"-Seite der 1:n-Beziehung) aus.
Hinweis
Es spielt keine Rolle, welche Tabelle oder Abfrage Sie zuerst auswählen.
Doppelklicken Sie auf die Felder, die Sie aus dieser Tabelle oder Abfrage verwenden möchten.
Wählen Sie auf derselben Seite des Assistenten in der Dropdownliste Tabellen/Abfragen eine andere Tabelle oder Abfrage aus der Liste aus. Wählen Sie in diesem Beispiel die Tabelle Orders (die "n"-Seite der 1:n-Beziehung) aus.
Doppelklicken Sie auf die Felder, die Sie aus dieser Tabelle oder Abfrage verwenden möchten.
Wenn Sie auf Weiter klicken, fragt der Assistent unter der Annahme, dass Sie die Beziehungen vor dem Starten des Assistenten richtig eingerichtet haben, wie möchten Sie Ihre Daten anzeigen? – d. h. nach welcher Tabelle oder Abfrage. Wählen Sie die Tabelle auf der 1-Seite der 1:n-Beziehung aus. Wählen Sie für dieses Beispiel nach Mitarbeiter aus, um das Formular Mitarbeiter zu erstellen. Der Assistent zeigt ein kleines Diagramm eines Formulars an. Die Seite sollte der folgenden Abbildung ähneln:
Das Feld im unteren Teil des Formulardiagramms stellt das Unterformular dar.
Hinweis
Wenn der Assistent nicht abfragt Wie sollen Ihre Daten angezeigt werden?, bedeutet dies, dass Access keine 1:n-Beziehung zwischen den von Ihnen ausgewählten Tabellen oder Abfragen erkannt hat. Der Assistent wird zwar fortgesetzt, aber Access fügt dem Formular kein Unterformular hinzu. Wenn Sie die Tabellenbeziehungen untersuchen möchten, klicken Sie auf Abbrechen, bevor Sie den Vorgang fortsetzen.
Wählen Sie unten auf der Seite des Assistenten Formular mit Unterformular(en), und klicken Sie anschließend auf Weiter.
Klicken Sie auf der Seite Welches Layout möchten Sie für Ihr Unterformular? auf die gewünschte Layoutoption, und klicken Sie dann auf Weiter. Beide Layoutstile ordnen die Daten des Unterformulars in Zeilen und Spalten an, aber ein tabellarisches Layout bietet Ihnen weitere Optionen. Sie können einem tabellarischen Unterformular Farbe, Grafiken und andere Formatierungselemente hinzufügen, während ein Datenblatt kompakter ist, wie die Datenblattansicht einer Tabelle.
Wählen Sie auf der nächsten Seite des Assistenten eine Formatvorlage für das Formular aus, und klicken Sie dann auf Weiter. Wenn Sie auf der vorhergehenden Seite Tabellarisch ausgewählt haben, wird die ausgewählte Formatvorlage auch auf das Unterformular angewendet.
Geben Sie auf der letzten Seite des Assistenten die gewünschten Titel für die Formulare ein. Access benennt die Formulare auf Basis der eingegebenen Titel und das Unterformular auf Basis des dafür eingegebenen Titels.
Geben Sie an, ob Sie das Formular in der Formularansicht öffnen möchten, damit Sie Informationen anzeigen oder eingeben können, oder in der Entwurfsansicht, damit Sie das Design ändern können, und klicken Sie dann auf Fertig stellen. Access erstellt zwei Formulare : eines für das Hauptformular, das das Unterformularsteuerelement enthält, und eines für das Unterformular selbst.
Hinzufügen von einem oder mehreren Unterformularen zu einem vorhandenen Formular mithilfe des Unterformular-Assistenten
Mithilfe dieses Verfahrens können Sie einem vorhandenen Formular ein oder mehrere Unterformulare hinzufügen. Für jedes Unterformular können Sie auswählen, ob von Access ein neues Formular erstellt oder ein vorhandenes Formular als Unterformular verwendet werden soll.
- Klicken Sie mit der rechten Maustaste auf das vorhandene Formular im Navigationsbereich, und klicken Sie dann auf Entwurfsansicht.
- Klicken Sie auf der Registerkarte Formularentwurf in der Gruppe Steuerelemente auf den Pfeil nach unten, um den Steuerelementkatalog anzuzeigen, und stellen Sie sicher, dass Steuerelement-Assistenten verwenden ausgewählt ist.
- Klicken Sie auf der Registerkarte Formularentwurf in der Gruppe Steuerelemente auf die Schaltfläche Unterformular/Unterbericht .
- Klicken Sie auf das Formular, an dem Sie das Unterformular platzieren möchten.
- Befolgen Sie die Anweisungen des Assistenten. Wenn Sie auf Fertig stellen klicken, fügt Access dem Formular ein Unterformular-Steuerelement hinzu. Wenn Sie ausgewählt haben, dass von Access für das Unterformular ein neues Formular erstellt wird, statt ein vorhandenes Formular zu verwenden, erstellt Access das neue Formularobjekt und fügt es dem Navigationsbereich hinzu
Erstellen eines Unterformulars durch Ziehen eines Formulars in ein anderes
Verwenden Sie dieses Verfahren, wenn Sie ein vorhandenes Formular als Hauptformular verwenden und diesem ein oder mehrere vorhandene Formulare als Unterformulare hinzufügen möchten.
- Klicken Sie im Navigationsbereich mit der rechten Maustaste auf das Formular, das als Hauptformular verwendet werden soll, und klicken Sie dann auf Layoutansicht.
- Ziehen Sie das Formular, das Sie als Unterformular verwenden möchten, aus dem Navigationsbereich auf das Hauptformular. Access fügt dem Hauptformular ein Unterformular-Steuerelement hinzu und bindet das Steuerelement an das Formular, das aus dem Navigationsbereich gezogen wurde. Access versucht außerdem, das Unterformular auf Grundlage der in Ihrer Datenbank definierten Beziehungen mit dem Hauptformular zu verknüpfen.
- Wiederholen Sie diesen Schritt, um dem Hauptformular weitere Unterformulare hinzuzufügen.
- Klicken Sie zur Überprüfung des Erfolgs der Verknüpfung auf der Registerkarte Start in der Gruppe Ansichten auf Ansicht, dann auf Formularansicht, und verwenden Sie den Datensatzmarkierer des Hauptformulars, um mehrere Datensätze zu durchlaufen. Wenn sich das Unterformular ordnungsgemäß nach jedem Mitarbeiter filtern lässt, ist das Verfahren abgeschlossen.
Wenn der vorherige Test nicht funktioniert, konnte Access nicht bestimmen, wie das Unterformular mit dem Hauptformular verknüpft werden soll, und die Link Child Fields Eigenschaften und Link Master Fields des Unterformularsteuerelements sind leer. Sie müssen diese Eigenschaften folgendermaßen manuell festlegen:
Klicken Sie mit der rechten Maustaste auf das Hauptformular im Navigationsbereich und dann auf Entwurfsansicht.
Klicken Sie einmal auf das Unterformular-Steuerelement, um es auszuwählen.
Wenn der Aufgabenbereich Eigenschaftenblatt nicht angezeigt wird, drücken Sie F4 , um ihn anzuzeigen.
Klicken Sie im Eigenschaftenblatt auf die Registerkarte Daten.
Klicken Sie neben dem Eigenschaftenfeld auf die
Link Child FieldsSchaltfläche Erstellen.
Das Dialogfeld Unterformularfeld-Linker wird angezeigt.Wählen Sie in den Dropdownlisten Felder in übergeordneter Tabelle und Felder in untergeordneter Tabelle die Felder aus, die Sie mit den Formularen verknüpfen möchten, und klicken Sie auf OK. Wenn Sie nicht sicher sind, welche Felder Sie verwenden sollen, klicken Sie auf Vorschlagen, damit Access versucht, die verknüpfenden Felder zu ermitteln.
Tipp
Wenn das Feld, das Sie zum Verknüpfen der Formulare verwenden möchten, nicht angezeigt wird, müssen Sie möglicherweise die Datensatzquelle des master Formulars oder untergeordneten Formulars bearbeiten, um sicherzustellen, dass das verknüpfende Feld enthalten ist. Wenn das Formular beispielsweise auf einer Abfrage basiert, müssen Sie sicherstellen, dass sich das verknüpfende Feld im Abfrageergebnis befindet.
Speichern Sie das Hauptformular, wechseln Sie zur Formularansicht, und überprüfen Sie, ob das Formular wie erwartet funktioniert.
Öffnen eines Unterformulars in einem neuen Fenster in der Entwurfsansicht
Wenn Sie Entwurfsänderungen an einem Unterformular vornehmen möchten, während Sie an dessen Hauptformular in der Entwurfsansicht arbeiten, können Sie das Unterformular in einem eigenen Fenster öffnen:
- Klicken Sie auf das Unterformular, um es auswählen.
- Klicken Sie auf der Registerkarte Formularentwurf in der Gruppe Extrasin Neues Fenster auf Unterformular.
Ändern der Standardansicht eines Unterformulars
Wenn Sie einem Formular ein Unterformular hinzufügen, zeigt das Unterformular-/Unterbericht-Steuerelement das Unterformular entsprechend der -Eigenschaft des Unterformulars Default View an. Diese Eigenschaft kann auf die folgenden Werte festgelegt werden:
- Einzelnes Formular
- Endlosformular
- Datenblatt
- Geteiltes Formular
Wenn Sie zum ersten Mal ein Unterformular erstellen, wird diese Eigenschaft möglicherweise auf Continuous Forms oder Single Form festgelegt. Wenn Sie jedoch die Default View -Eigenschaft eines Unterformulars auf Datasheetfestlegen, wird das Unterformular als Datenblatt im Hauptformular angezeigt.
So legen Sie die Default View -Eigenschaft eines Unterformulars fest:
Schließen Sie alle geöffneten Objekte.
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf das Unterformular, und klicken Sie dann auf Entwurfsansicht.
Wenn das Eigenschaftenblatt noch nicht angezeigt wird, drücken Sie F4 , um es anzuzeigen.
Vergewissern Sie sich, dass in der Dropdownliste oben im Eigenschaftenblatt die Option Formular ausgewählt ist.
Legen Sie auf der Registerkarte Format des Eigenschaftenblatts die Eigenschaft Standardansicht auf die zu verwendende Ansicht fest.
Hinweis
Wenn die gewünschte Ansicht nicht in der Liste enthalten ist, stellen Sie sicher, dass die Eigenschaft für diese
Allow...ViewAnsicht auf Ja festgelegt ist. Wenn Sie beispielsweise Datenblatt als Standardansicht für das Formular angeben möchten, stellen Sie sicher, dass die Eigenschaft Datenblattansicht zulassen auf Ja festgelegt ist.Speichern und schließen Sie das Unterformular, und öffnen Sie das Hauptformular, um die Ergebnisse zu überprüfen.
Hinzufügen von verknüpften Daten zu einem Formular ohne Erstellung eines Unterformulars
Sie müssen nicht immer ein separates Formularobjekt erstellen, um verwandte Daten anzuzeigen. Wenn Sie beispielsweise ein Formular in der Layout- oder in der Entwurfsansicht bearbeiten und eine Tabelle oder Abfrage aus dem Navigationsbereich auf das Formular ziehen, wird von Access ein Unterformular/-bericht-Steuerelement erstellt, das die Daten in dem Objekt anzeigt. Die -Eigenschaft des Default View -Objekts bestimmt, wie die Daten angezeigt werden. In der Regel ist dies auf Datenblattansicht festgelegt, aber Sie können die Default View Eigenschaft einer Tabelle oder Abfrage auch auf Einzelnes Formular, geteiltes Formular oder fortlaufende Formulare festlegen, sodass Sie mehr Flexibilität beim Anzeigen verwandter Daten auf Formularen erhalten.
Hinweis
Das Ändern der Default View Eigenschaft für eine Tabelle oder Abfrage bestimmt, wie sie immer angezeigt wird, wenn sie geöffnet wird, ob Sie sie im Navigationsbereich öffnen oder in einem Unterformular-/Unterbericht-Steuerelement anzeigen. Da das Ändern der Ansichtseinstellungen für eine Tabelle manchmal zu Verwirrung führen kann, wenn die Tabelle aus dem Navigationsbereich heraus geöffnet wird, empfiehlt es sich, für dieses Verfahren eine Abfrage anstelle einer Tabelle zu verwenden.