Report.RecordSource-Eigenschaft (Access)

Verwenden Sie die RecordSource-Eigenschaft , um die Quelle der Daten für einen Bericht anzugeben. Zeichenfolge mit Lese-/Schreibzugriff.

Syntax

Ausdruck. Recordsource

Ausdruck Eine Variable, die ein Report-Objekt darstellt.

HinwBemerkungeneise

Die Einstellung der Eigenschaft RecordSourceRecordSource kann ein Tabellenname, ein Abfragename oder eine SQL-Anweisung sein. Sie können z.B. die folgenden Einstellungen verwenden.

Beispieleinstellung Beschreibung
Mitarbeiter Ein Tabellenname, der die Tabelle Employees als Datenquelle angibt.
SELECT Orders!OrderDate FROM Orders; Eine SQL-Anweisung, die das Feld OrderDate in der Tabelle Orders als Datenquelle angibt. Sie können ein Steuerelement im Formular oder Bericht an das Feld OrderDate in der Tabelle Orders binden, indem Sie die ControlSource-Eigenschaft des Steuerelements auf OrderDate festlegen.

Hinweis

Das Ändern der Datensatzquelle eines geöffneten Formulars oder Berichts bewirkt, dass die zugrunde liegenden Daten automatisch erneut abgefragt werden. Wenn die Recordset-Eigenschaft eines Formulars zur Laufzeit festgelegt wird, wird die RecordSource-Eigenschaft des Formulars aktualisiert.

Nachdem Sie ein Formular oder einen Bericht erstellt haben, können Sie die Datenquelle ändern, indem Sie die RecordSource-Eigenschaft. ändern. Die Eigenschaft RecordSourceRecordSource ist auch hilfreich, wenn Sie ein wiederverwendbares Formular oder einen wiederverwendbaren Bericht erstellen möchten. Sie können beispielsweise einen Bericht erstellen, der einen Standardentwurf enthält, dann den Bericht kopieren und die RecordSource-Eigenschaft ändern, um Daten aus einer anderen Tabelle, Abfrage oder SQL-Anweisung anzuzeigen.

Beispiel

Im folgenden Beispiel wird die RecordSource-Eigenschaft eines Formulars auf die Tabelle Customers festgelegt.

Forms!frmCustomers.RecordSource = "Customers"

Im nächsten Beispiel wird die Datensatzquelle eines Formulars in einen einzelnen Datensatz in der Tabelle Customers geändert, je nachdem, wie der Unternehmensname im CmboCompanyName-Kombinationsfeld-Steuerelement ausgewählt ist. The combo box is filled by an SQL statement that returns the customer ID (in the bound column) and the company name. The CustomerID has a Text data type.

Sub cmboCompanyName_AfterUpdate() 
    Dim strNewRecord As String 
    strNewRecord = "SELECT * FROM Customers " _ 
        & " WHERE CustomerID = '" _ 
        & Me!cmboCompanyName.Value & "'" 
    Me.RecordSource = strNewRecord 
End Sub

Das folgende Beispiel zeigt, wie Sie eine Structured Query Language (SQL)-Anweisung verwenden, um die Datenquelle eines Berichts einzurichten, während er geöffnet wird.

Private Sub Report_Open(Cancel As Integer)

    On Error GoTo Error_Handler

    Me.Caption = ?My Application?

    DoCmd.OpenForm FormName:=?frmReportSelector_MemberList?, _
    Windowmode:=acDialog

    ?Cancel the report if ?cancel? was selected on the dialog form.

    If Forms!frmReportSelector_MemberList!txtContinue = ?no? Then
        Cancel = True
        GoTo Exit_Procedure
    End If
    Me.RecordSource = ReplaceWhereClause(Me.RecordSource, _
      Forms!frmReportSelector_MemberList!txtWhereClause)

Exit_Procedure:
    Exit Sub

Error_Handler:
    MsgBox Err.Number & ?: ? & Err.Description
    Resume Exit_Procedure
    Resume

End Sub

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.