Ms access 从DoCmd.OpenReport传递参数以访问2010报告

Ms access 从DoCmd.OpenReport传递参数以访问2010报告,ms-access,Ms Access,我有一个表单,它有两个文本框和一个按钮。文本框为日期从和日期到。单击按钮时,会运行一些VBA代码,循环查询结果(qryInvoicesBetweenDates),获取发票ID并生成发票的打印预览。问题是,我无法解决如何在循环中传递当前ID的报告。我只需要给DoCmd.OpenReport he invoice_number变量 VBA代码: Dim qdf As QueryDef Set qdf = CurrentDb.QueryDefs("qryInvoicesBetweenDates") D

我有一个表单,它有两个文本框和一个按钮。文本框为日期从和日期到。单击按钮时,会运行一些VBA代码,循环查询结果(qryInvoicesBetweenDates),获取发票ID并生成发票的打印预览。问题是,我无法解决如何在循环中传递当前ID的报告。我只需要给DoCmd.OpenReport he invoice_number变量

VBA代码:

Dim qdf As QueryDef
Set qdf = CurrentDb.QueryDefs("qryInvoicesBetweenDates")
Dim rs As DAO.Recordset

qdf.Parameters(0) = tbFrom.Value
qdf.Parameters(1) = tbTo.Value

Set rs = qdf.OpenRecordset()
Do Until rs.EOF = True
        ' Set the invoice number to the current row
        'invoice_number = rs.N
    invoice_number = rs.Fields(0).Value


    ' Preview the invoice
    Dim stDocName As String
    stDocName = "InvoiceForWork"
    DoCmd.OpenReport stDocName, acPreview
Loop

非常感谢。

您可以将where语句用于:


其中ID是报告中与
Rs!相对应的字段的名称!发票号
。上述示例适用于数字数据类型,文本数据类型需要引号。

可以将where语句用于:

其中ID是报告中与
Rs!相对应的字段的名称!发票号
。上面的示例适用于数字数据类型,文本数据类型需要引号

DoCmd.OpenReport stDocName, acPreview,,"ID=" & Rs!invoice_number