Ms access 使用组合框为报告创建弹出窗口(在我的情况下不起作用)
放大: 我用一个简单的组合框创建了一个窗体作为窗口。我得到了一个查询,它与where子句有关,where子句引用组合框的from和值。我在报告中写了一段代码Ms access 使用组合框为报告创建弹出窗口(在我的情况下不起作用),ms-access,vba,Ms Access,Vba,放大: 我用一个简单的组合框创建了一个窗体作为窗口。我得到了一个查询,它与where子句有关,where子句引用组合框的from和值。我在报告中写了一段代码 Private Sub Report_Load() frm.Customers.Show End Sub 但不知何故,它首先打开的是查询,而不是表单本身。我的意思是,查询希望我输入[Forms]![frm_客户]![cbo_客户].[value] 当我单独运行表单时,一切正常打开。你能告诉我为什么吗 查询编辑: SELECT dbo_li
Private Sub Report_Load()
frm.Customers.Show
End Sub
但不知何故,它首先打开的是查询,而不是表单本身。我的意思是,查询希望我输入[Forms]![frm_客户]![cbo_客户].[value]
当我单独运行表单时,一切正常打开。你能告诉我为什么吗
查询编辑:
SELECT dbo_listy.listnumb, dbo_listy.id, dbo_listy.created, dbo_listy.type
FROM dbo_listy
WHERE forwho =Forms!frm_Customers!cbo_customers.value;
首先打开表单,然后在命令按钮中使用:
expression.OpenReport(ReportName, View, FilterName, _
WhereCondition, WindowMode, OpenArgs)
DoCmd.OpenReport "MyReport",,,"MyID=" & Me.txtID
还是你的情况
DoCmd.OpenReport "MyReport",acViewPreview,,"id=" & Me.cbo_customers
请注意,报告应基于完整的数据集,WHERE语句将其限制为Me.txtID或cbo_customers中的客户ID
编辑正如我上面所说的,查询应该包括完整的记录集,即:
SELECT dbo_listy.listnumb,
dbo_listy.id,
dbo_listy.created,
dbo_listy.type
FROM dbo_listy
另请参见Ok,但为什么它强制打印+调用forwho inputboxForWho在您发布的查询中不存在。我建议你使用一个ID。一切似乎都起作用。告诉我为什么它会打印打开报告的instat?阅读上面的答案,特别是链接。您需要将View属性设置为acViewPreview。您可以在报表页眉或页脚的文本框中添加数字,例如
=Sum(This)
或=Count(That)
,还有一个运行的Sum。