Search code examples
ms-accessreportrecordset

Access:How can I generate a report of a recordset?


How can I generate a report in access with the data from a recordset (instead of a query or table). I have updates to the recordset that also must be shown in the report.


Solution

  • From Access Web you can use the "name" property of a recordset. You resulting code would look something like this:

    In the report

    Private Sub Report_Open(Cancel As Integer)
        Me.RecordSource = gMyRecordSet.Name
    End Sub
    

    In the calling object (module, form, etc.)

    Public gMyRecordSet As Recordset
    '...
    Public Sub callMyReport()
        '...
        Set gMyRecordSet = CurrentDb.OpenRecordset("Select * " & _
                                                   "from foo " & _
                                                   "where bar='yaddah'")
        DoCmd.OpenReport "myReport", acViewPreview  
        '...
        gMyRecordSet.Close  
        Set gMyRecordSet = Nothing
        '...
    End Sub