在 where 条件下访问子报表

Posted

技术标签:

【中文标题】在 where 条件下访问子报表【英文标题】:Access subreport in where condition 【发布时间】:2018-02-20 12:53:12 【问题描述】:

我想使用 docmd.openreport 函数打开一个报告,并通过其子报告中的值(日期格式)对其进行过滤。

在 where 子句中访问此子报表的正确语法是什么?

我已经尝试过使用 Mitarbeiterhonorare_Unterbericht.Datum、[Mitarbeiterhonorare_Unterbericht]![Datum] 和其他几个符号,但我似乎没有正确...

报告:Mitarbeiterhonorare,子报告:Mitarbeiterhonorare_Unterbericht,要访问的字段:基准

非常感谢您!

WhereCondition:="[....] AND [x] BETWEEN #" & Format(Me.Datum_von, "mm\/dd\/yyyy") & "# AND #" & Format(Me.Datum_bis, "mm\/dd\/yyyy") & "#"

【问题讨论】:

【参考方案1】:

应该是:

WhereCondition:="[Datum] BETWEEN #" & Format(Me.Datum_von, "mm\/dd\/yyyy") & "# AND #" & Format(Me.Datum_bis, "mm\/dd\/yyyy") & "#"

【讨论】:

不幸的是不起作用,然后在“基准”的参数值之后询问我 那么 Datum 不是您尝试过滤的字段的名称。只有你会知道它可能是什么。 是的,我现在仔细检查了......还有其他想法吗? 我看到你提到了 subreport。如果是这样,并且 Datum 来自子报表,则不能以这种方式过滤报表。 啊,太可惜了...还有什么其他想法可以合并这两个报告,然后按报告中的两个日期字段进行过滤吗?

以上是关于在 where 条件下访问子报表的主要内容,如果未能解决你的问题,请参考以下文章

在 ms 访问中将记录源分配给子报表

如果不为空,SQL 将在 Where 中包含条件

我想在 where 条件下访问 null 的记录

使用数组过滤器打开报表

where条件放在子SQL语句中是否查询速度更快?

on where having总结