Um die Datenquelle für einen Bericht auszuwählen, öffnen Sie den Bericht in der Layoutansicht, und drücken Sie ALT+EINGABETASTE, um das Eigenschaftenblatt zu öffnen. Klicken Sie auf das Quadrat direkt unter der Berichtsobjektregisterkarte, um den gesamten Bericht auszuwählen, und klicken Sie dann auf dem Eigenschaftenblatt auf der Registerkarte Daten auf Datensatzquelle , um die Eigenschaft auszuwählen. Anschließend können Sie die Datensatzquelle festlegen, indem Sie ein Element aus der Liste auswählen oder auf die Schaltfläche Erstellen klicken, , um die Abfrageentwurfsansicht zu öffnen, in der Sie die Datensatzquelle wie jede andere Abfrage erstellen können.
Die Datensatzquelle eines Berichts bestimmt, welche Felder aus der Datenbank im Bericht angezeigt werden können. In einer a relationalen Datenbank sind die aufeinander bezogenen Daten normalerweise auf mehrere Tabellen verteilt. Beispielsweise sind die Informationen über Kunden in einer Tabelle, die über die Bestellungen jedoch in einer anderen Tabelle gespeichert. Berichte bieten eine flexible Möglichkeit, um die Daten neu zusammenzustellen und sie in genau der gewünschten Weise darzustellen, und können für die Druckausgabe optimiert werden. Weitere Informationen zu den Datensatzquellen für Berichte finden Sie im weiteren Verlauf dieses Artikels. Eine Übersicht über Berichte finden Sie im Artikel Einführung in Berichte in Access.
Hinweis: Dieser Artikel gilt nicht für Access Web Apps, d. h. für Datenbanken, die Sie mit Access entwerfen und online veröffentlichen. Weitere Informationen finden Sie unter Erstellen einer Access-App .
Inhalt dieses Artikels
Verschiedene Typen von Datenquellen
Tabelle
Wenn sich alle benötigten Felder in einer einzelnen Tabelle befinden, können Sie diese Tabelle als Datensatzquelle des Berichts verwenden. Wenn sich die benötigten Felder in zwei oder mehr Tabellen befinden, müssen Sie sicherstellen, dass die Tabellen anhand eines gemeinsamen Werts logisch verknüpft werden können, und dann eine benannte Abfrage oder eine eingebettete Abfrage erstellen, die als Datensatzquelle dient.
Benannte Abfrage
Eine benannte Abfrage (normalerweise einfach nur Abfrage genannt) ist eine Abfrage, die als Datenbankobjekt gespeichert wurde. Sie können eine benannte Abfrage als Datensatzquelle für mehrere Formulare oder Berichte verwenden. Änderungen des Abfrageentwurfs wirken sich jedoch auf alle Formulare und Berichte aus, die die Abfrage als Datensatzquelle verwenden. Darüber hinaus kann eine benannte Abfrage vergleichsweise leicht gelöscht werden, wodurch die Verbindung zu Formularen oder Berichten verloren geht, die diese Abfrage verwenden.
Eingebettete Abfrage
Eine eingebettete Abfrage ist eine Abfrage, die in der Datensatzquelle-Eigenschaft eines anderen Objekts gespeichert ist. Da es sich bei einer eingebetteten Abfrage um kein separates Objekt handelt, ist es weniger wahrscheinlich, dass Sie die Funktion des Berichts zerstören, indem Sie seine Abfrage versehentlich löschen oder ändern. Das Erstellen einer eingebetteten Abfrage empfiehlt sich, wenn die Abfrage exklusiv nur für den Bericht bestimmt sein soll (anders ausgedrückt, Sie werden nicht in die Lage kommen, dass Sie die Abfrage auch für andere Objekte verwenden möchten).
Eingebettete Abfragen werden standardmäßig bei Verwendung der Tools Berichtsentwurf, Leerer Bericht oder Etiketten, die im nächsten Abschnitt beschrieben werden, erstellt. Eingebettete Abfragen werden außerdem vom Berichts-Assistenten erstellt, vorausgesetzt, Sie wählen Daten aus mehreren Tabellen für den Bericht aus. Wenn Sie nur Daten aus einer Tabelle auswählen, bindet der Berichts-Assistent den Bericht direkt an diese Tabelle.
Sie können außerdem eine eingebettete Abfrage erstellen, indem Sie die SQL-Anweisung aus einer benannten Abfrage, die in der SQL-Ansicht geöffnet ist, kopieren und sie dann in die Eigenschaft "Datensatzquelle" eines Berichts einfügen. So öffnen Sie eine benannte Abfrage in der SQL-Ansicht:
-
Klicken Sie mit der rechten Maustaste im Navigationsbereich auf die Abfrage, und klicken Sie dann auf Entwurfsansicht.
-
Klicken Sie auf der Registerkarte Entwurf in der Gruppe Ergebnisse auf Ansicht, und klicken Sie dann auf SQL-Ansicht.
Erstellen von Datensatzquellen durch Berichtstools
Zum Erstellen eines Berichts in Access klicken Sie auf der Registerkarte Erstellen auf eins der Tools in der Gruppe Berichte. Je nachdem, wie Sie die Tools verwenden, erstellt jedes einen der drei im vorstehenden Abschnitt beschriebenen Datensatzquellentypen.
In der folgenden Tabelle ist die Funktion jedes der Berichtstools, zusammen mit den standardmäßig erstellten Datensatzquellentypen, beschrieben.
Tool |
Beschreibung |
Standardmäßiger Datensatzquellentyp |
---|---|---|
Bericht |
Erstellt einen einfachen, tabellarischen Bericht, der alle Felder in der Datenquelle enthält. |
Tabelle oder benannte Abfrage, die vor dem Klicken auf das Tool im Navigationsbereich ausgewählt werden muss. |
Berichtsentwurf |
Öffnet einen leeren Bericht in der Entwurfsansicht, dem einfach die gewünschten Felder und Steuerelemente hinzugefügt werden können. |
Eingebettete Abfrage, wenn Felder aus dem Aufgabenbereich "Feldliste" auf den Bericht gezogen werden. Sie können alternativ auch eine Tabelle oder benannte Abfrage aus der Dropdownliste "Datensatzquelle" auf dem Eigenschaftenblatt auswählen. |
Leerer Bericht |
Öffnet einen leeren Bericht in der Layoutansicht und zeigt den Aufgabenbereich "Feldliste" an. Wenn Felder aus der Feldliste auf den Bericht gezogen werden, erstellt Access eine eingebettete Abfrage und speichert sie in der Eigenschaft "Datensatzquelle" des Berichts. |
Eingebettete Abfrage, wenn Felder aus dem Aufgabenbereich "Feldliste" auf den Bericht gezogen werden. Sie können alternativ auch eine Tabelle oder benannte Abfrage aus der Dropdownliste "Datensatzquelle" auf dem Eigenschaftenblatt auswählen. |
Berichts-Assistent |
Zeigt einen Assistenten mit mehreren Schritten an, in dem Sie Felder, Gruppierungs-/Sortierungsebenen und Layoutoptionen angeben können. Der Assistent erstellt auf der Grundlage der getroffenen Auswahl einen Bericht. |
Eingebettete Abfrage, wenn Felder aus mehreren Tabellen ausgewählt werden. Wenn Sie nur Felder aus einer einzelnen Tabelle auswählen, verwendet Access diese Tabelle als Datensatzquelle. |
Etiketten |
Zeigt einen Assistenten an, in dem standardmäßige oder benutzerdefinierte Etikettengrößen sowie die anzuzeigenden Felder und die Art ihrer Sortierung ausgewählt werden können. Der Assistent erstellt auf der Grundlage der getroffenen Auswahl den Etikettenbericht. |
Tabelle oder benannte Abfrage, die jeweils vor dem Klicken auf das Tool ausgewählt werden muss. |
Hinweis: Die Tools Berichtsentwurf, Berichts-Assistent und Etiketten erstellen "Clientberichte", die nicht mit Webdatenbanken kompatibel sind. Weitere Informationen zu Webdatenbanken finden Sie im Artikel Bearbeiten oder Veröffentlichen einer Webdatenbanksite auf SharePoint.
Arbeiten mit Datensatzquellen
Konvertieren einer Datensatzquelle in eine eingebettete Abfrage
Jeder Bericht, der an eine Tabelle oder benannte Abfrage gebunden ist, kann so geändert werden, dass er stattdessen an eine eingebettete Abfrage angebunden ist. Wie zuvor erwähnt, kann dies die Wartung einer Datenbank erleichtern, da Berichte so eigenständiger und weniger von anderen Objekten abhängig werden. Abhängig vom aktuellen Datensatzquellentyp können Sie eine der folgenden Methoden zum Konvertieren in eine eingebettete Abfrage verwenden:
Methode 1: Klicken auf die Schaltfläche "Erstellen"
Wenn es sich bei der Eigenschaft "Datensatzquelle" um einen Tabellennamen handelt, können Sie schnell eine eingebettete Abfrage erstellen, indem Sie im Feld der Eigenschaft "Datensatzquelle" auf die Schaltfläche "Erstellen" klicken.
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf den zu ändernden Bericht, und klicken Sie dann auf Layoutansicht.
-
Klicken Sie mit der rechten Maustaste an eine beliebige Stelle des Berichts, und klicken Sie dann auf Berichtseigenschaften.
-
Klicken Sie auf der Registerkarte Alle in das Eigenschaftenfeld Datensatzquelle, und klicken Sie dann auf die Schaltfläche Erstellen .
-
Access fragt, ob Sie eine auf der Tabelle basierende Abfrage erstellen möchten. Klicken Sie auf Ja, um fortzufahren.
Access öffnet den Abfrage-Generator und fügt die Tabelle hinzu, die sich ursprünglich in der Steuerelementquelle-Eigenschaft befand. -
Fügen Sie dem Abfrageraster Felder hinzu, indem Sie auf jeden Feldnamen, den Sie in den Bericht aufnehmen möchten, doppelklicken. Dies muss für alle Felder erfolgen, die im Bericht angezeigt werden sollen.
-
So fügen Sie Felder von zugehörigen Tabellen oder Abfragen hinzu:
-
Klicken Sie auf der Registerkarte Entwurf in der Gruppe Abfrageeinrichtung auf Tabellen hinzufügen (Tabelle in Access anzeigen).
-
Wählen Sie die Tabelle oder Abfrage aus, die Sie hinzufügen möchten.
-
Vergewissern Sie sich, dass die hinzugefügten Tabellen und Abfragen logisch verknüpft sind. Beispielsweise weist das Feld "ID" der Tabelle Kunden wahrscheinlich eine Verknüpfung auf, die es mit dem Feld "KundenID" der Tabelle "Bestellungen" verbindet. Sie können Verknüpfungslinien erstellen, indem Sie einen Feldnamen aus einer Tabelle oder Abfrage auf einen Feldnamen in einer anderen Tabelle oder Abfrage ziehen.Einführung in Abfragen.
Weitere Informationen zum Erstellen von Abfragen finden Sie im Artikel -
Fügen Sie dem Abfrageraster Felder hinzu, indem Sie auf jeden Feldnamen, den Sie in den Bericht aufnehmen möchten, doppelklicken. Dies muss für alle Felder erfolgen, die im Bericht angezeigt werden sollen.
-
-
So prüfen Sie Ihre Abfrage:
-
Klicken Sie auf der Registerkarte Entwurf in der Gruppe Ergebnisse auf Ansicht und dann auf Datenblattansicht.
-
Wenn Sie wieder zur Entwurfsansicht wechseln möchten, klicken Sie auf der Registerkarte Entwurf in der Gruppe Ergebnisse auf Ansicht und dann auf Entwurfsansicht.
-
-
Wenn Sie überzeugt sind, dass die von der Abfrage zurückgegebenen Daten die Daten sind, die Sie im Bericht anzeigen möchten, klicken Sie auf der Registerkarte Entwurf in der Gruppe Schließen auf Schließen.
-
Klicken Sie auf Ja, um die an der SQL-Anweisung vorgenommenen Änderungen zu speichern und die Eigenschaft zu aktualisieren.
Hinweis: Wenn die neue Abfrage nicht alle im Bericht verwendeten Felder enthält, fordert Access Sie zur Eingabe eines Parameterwerts für jedes fehlende Feld auf. Sie können entweder den Verweis auf das Feld aus dem Bericht löschen oder das unter Bearbeiten einer eingebetteten Abfrage beschriebene Verfahren verwenden, um der Abfrage die fehlenden Felder hinzuzufügen.
Methode 2: Hinzufügen eines Felds aus einer zugehörigen Tabelle mithilfe der Feldliste
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf den zu ändernden Bericht, und klicken Sie dann auf Layoutansicht.
-
Wenn der Aufgabenbereich "Feldliste" noch nicht angezeigt wird, klicken Sie auf der Registerkarte Entwurf in der Gruppe Tools auf Vorhandene Felder hinzufügen.
-
Wenn oben in der Feldliste Alle Tabellen anzeigen angezeigt wird, klicken Sie darauf, um die Felder in zugehörigen Tabellen und anderen Tabellen anzuzeigen.
-
Erweitern Sie unter In verknüpften Tabellen verfügbare Felder eine Tabelle, und ziehen Sie eins ihrer Felder auf den Bericht.Bearbeiten einer eingebetteten Abfrage beschriebenen Verfahrens bearbeiten.
Access ändert die Datensatzquelle in eine eingebettete Abfrage, die das hinzugefügte Feld enthält. Sie können damit fortfahren, in dieser Weise Felder hinzuzufügen, oder die eingebettete Abfrage mithilfe des in
Methode 3: Kopieren und Einfügen von SQL aus einer benannten Abfrage
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf die Abfrage, die die zu kopierende SQL-Anweisung enthält, und klicken Sie dann auf Entwurfsansicht.
-
Klicken Sie auf der Registerkarte Start in der Gruppe Sichten auf Ansicht und dann auf SQL-Ansicht.
-
Kopieren Sie den Text in den SQL-Bereich, und schließen Sie dann die Abfrage, ohne sie zu speichern.
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf den Bericht, dem Sie die eingebettete Abfrage hinzufügen möchten, und klicken Sie dann auf Layoutansicht.
-
Wenn das Eigenschaftenblatt noch nicht angezeigt wird, drücken Sie F4, um es anzuzeigen.
-
Wählen Sie auf der Registerkarte Alle den Text aus, der in der Eigenschaft Datensatzquelle angezeigt wird, und drücken Sie dann STRG+P, um den SQL-Code in das Eigenschaftenfeld zu kopieren.
Hinweis: Wenn die neue Abfrage nicht alle im Bericht verwendeten Felder enthält, fordert Access Sie zur Eingabe eines Parameterwerts für jedes fehlende Feld auf. Sie können entweder den Verweis auf das Feld aus dem Bericht löschen oder das unter Bearbeiten einer eingebetteten Abfrage beschriebene Verfahren verwenden, um der Abfrage die fehlenden Felder hinzuzufügen.
Methode 4: Kopieren und Einfügen von SQL aus einem anderen Formular oder Bericht
Sie können eine eingebettete Abfrage direkt aus der Eigenschaft "Datensatzquelle" eines Objekts in ein anderes kopieren. Wenn daher ein anderes Formular oder ein anderer Bericht eine eingebettete Abfrage enthält, die die von Ihnen gewünschten Daten zurückgibt, können Sie das Formular oder den Bericht einfach für den aktuell bearbeiteten Bericht wiederverwenden.
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf das Formular oder den Bericht, das bzw. der die zu kopierende eingebettete SQL-Anweisung enthält, und klicken Sie dann auf Layoutansicht.
-
Klicken Sie mit der rechten Maustaste an einer beliebigen Stelle auf das Formular oder den Bericht, und klicken Sie dann auf Formulareigenschaften oder Berichtseigenschaften.
-
Wählen Sie auf der Registerkarte Alle den gesamten Text der SQL-Anweisung im Eigenschaftenfeld Datensatzquelle aus, und drücken Sie dann STRG+C, um ihn zu kopieren.
-
Schließen Sie das Formular oder den Bericht ohne zu speichern.
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf den Bericht, dem Sie die eingebettete Abfrage hinzufügen möchten, und klicken Sie dann auf Layoutansicht.
-
Klicken Sie mit der rechten Maustaste an eine beliebige Stelle des Berichts, und klicken Sie dann auf Berichtseigenschaften.
-
Wählen Sie auf der Registerkarte Alle den Text aus, der in der Eigenschaft Datensatzquelle angezeigt wird, und drücken Sie dann STRG+P, um den SQL-Code in die Eigenschaft zu kopieren.
Hinweis: Wenn die neue Abfrage nicht alle im Bericht verwendeten Felder enthält, fordert Access Sie zur Eingabe eines Parameterwerts für jedes fehlende Feld auf. Sie können entweder den Verweis auf das Feld aus dem Bericht löschen oder das folgende Verfahren (Bearbeiten einer eingebetteten Abfrage") verwenden, um der Abfrage die fehlenden Felder hinzuzufügen.
Bearbeiten einer eingebetteten Abfrage
Mit wachsender Datenbank kann es erforderlich werden, die Datensatzquelle eines Berichts zu ändern, beispielsweise, um einem Bericht weitere Felder hinzuzufügen. Verwenden Sie dieses Verfahren, um die Datensatzquelle im Abfrage-Generator zu öffnen:
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf den Bericht, der die zu bearbeitende eingebettete Abfrage enthält, und klicken Sie dann auf Layoutansicht.
-
Klicken Sie mit der rechten Maustaste auf eine beliebige Stelle des Berichts, und klicken Sie dann auf Berichtseigenschaften.
-
Klicken Sie auf der Registerkarte Alle auf das Eigenschaftenfeld Datensatzquelle , und klicken Sie dann auf die Schaltfläche Erstellen .
Access öffnet die Abfrage im Abfrage-Generator. -
Bearbeiten Sie die Abfrage nach Bedarf, und klicken Sie dann auf der Registerkarte Entwurf in der Gruppe Schließen auf Schließen.
-
Klicken Sie auf Ja, um die Änderungen zu speichern und die Eigenschaft zu aktualisieren.
Access schließt den Abfrage-Generator. Alle im Abfrage-Generator vorgenommenen Änderungen werden in der SQL-Anweisung in der Eigenschaft Datensatzquelle berücksichtigt.
Weitere Informationen zum Erstellen von Abfragen finden Sie im Artikel Einführung in Abfragen.
Speichern einer eingebetteten Abfrage als benannte Abfrage
Sie gelangen möglicherweise zu dem Schluss, dass die eingebettete Abfrage, die als Datensatzquelle für einen Bericht dient, auch für andere Zwecke nützlich wäre. In diesem Fall können Sie sie als benannte Abfrage speichern, die dann für die Verwendung durch andere Objekte zur Verfügung steht.
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf den Bericht, der die eingebettete Abfrage enthält, und klicken Sie dann auf Layoutansicht.
-
Klicken Sie mit der rechten Maustaste auf eine beliebige Stelle des Berichts, und klicken Sie dann auf Berichtseigenschaften.
-
Klicken Sie auf der Registerkarte Alle auf das Eigenschaftenfeld Datensatzquelle , und klicken Sie dann auf die Schaltfläche Erstellen .
Access öffnet die Abfrage im Abfrage-Generator. -
Klicken Sie auf der Registerkarte Entwurf in der Gruppe Schließen auf Speichern unter.
-
Geben Sie im Dialogfeld Speichern unter einen Abfragenamen im oberen Feld ein, und klicken Sie dann auf OK.
Access speichert die Abfrage als benannte Abfrage im Navigationsbereich.
-
Klicken Sie auf der Registerkarte Entwurf in der Gruppe Schließen auf Schließen.
Access fragt Sie, ob Sie die an der eingebetteten Abfrage vorgenommenen Änderungen speichern möchten, auch wenn Sie keine Änderungen vorgenommen haben. In den meisten Fällen sollten Sie einfach auf Nein klicken, um den Abfrage-Generator zu schließen. Wenn Sie jedoch Änderungen vorgenommen haben, die in der eingebetteten Abfrage des Berichts berücksichtigt werden sollen, klicken Sie auf Ja.