我有一张表格,可以帮我过滤掉我想要的报告记录。按钮将在单击时打开报告。

这是按钮中的代码:
Private Sub Open_OEE_Click()
DoCmd.OpenReport "OEE_Report", acViewReport, , , acWindowNormal
End Sub我不断地发现错误:

我还将我的报告中的查询放在“记录来源”下,作为:
SELECT * FROM 3_OEE WHERE ((([3_OEE].RecordID)=Forms![3_OEE_Report]!cboRecordID) And (([3_OEE].Date_Recorded)=DateValue(Forms![3_OEE_Report]!Date_Recorded)) And (([3_OEE].MC_No)=Forms![3_OEE_Report]!cboMCNo) And (([3_OEE].Product)=Forms![3_OEE_Report]!cboProduct));我想根据一个标准(文本框或组合框)搜索,而不是同时搜索四个.
我是不是漏掉了什么?
发布于 2016-12-30 03:03:23
我从另一个来源寻求帮助。回答问题
发布于 2016-12-29 17:22:55
MS确实会对括号有点过火。通过删除不必要的记录源,使报表的记录源更容易阅读。您还需要以正确的格式获得日期条件- Access总是在SQL查询中使用US格式,并且需要在日期前后进行#签名:
SELECT * FROM 3_OEE
WHERE [3_OEE].RecordID = Forms![3_OEE_Report]!cboRecordID
And [3_OEE].Date_Recorded = Format(Forms![3_OEE_Report]!Date_Recorded, "\#mm/dd/yyyy\#")
And [3_OEE].MC_No = Forms![3_OEE_Report]!cboMCNo
And [3_OEE].Product = Forms![3_OEE_Report]!cboProduct;我还建议为此创建一个命名查询,并将报表的记录源设置为命名查询。然后,您可以在不需要运行报表的情况下单独测试查询(但要确保表单是打开的,并填充了相关控件)。
https://stackoverflow.com/questions/41372094
复制相似问题