我试图在我制作的报告中显示记录集的结果,我的过程是在表单上选择一年,然后单击一个按钮,单击该按钮后,它将将该年份发送到报告并运行以下Report_Open代码:
Private Sub Report_Open(Cancel As Integer)
Dim rst As Recordset
Dim qdf As QueryDef
Dim subReport As Report
If Not IsNull(OpenArgs) Then
Set qdf = CurrentDb.QueryDefs("qry")
qdf.Parameters("[Year]").Value = OpenArgs
Set rst = qdf.OpenRecordset()
qdf.Close
'Code to fill the report'
'''''''''''''''''''''''''
Else
DoCmd.Close
End If
End Sub
我正在尝试将该记录集的结果显示在我的报告上。由于查询的性质,结果可能会有很大差异,因此我不能只将结果设置在一定数量的文本框中。
我试图将报表的 RecordSource 设置为此记录集,但我了解到您不能对记录集执行此操作。我对如何制作报告很陌生,所以我已经在这方面坚持了几天,感觉有点失败。非常感谢任何帮助。
这不是在 Access 中执行此操作的方式。直接将您的查询名称分配给报告的记录源。然后 Access 将自动创建记录集。
然后您可以通过指定 where 子句来打开报告:
DoCmd.OpenReport "rptReport", acViewPreview, WhereCondition:="[Year] = " & theYear