使用导航表单和子报表

时间:2017-08-31 03:52:36

标签: vba ms-access access-vba

我有一个名为formName的表单,其中包含名为idFilter的组合控件和名为subReportName的子报表。 我想要做的是当我更改idFilter中的值时,subReportName中的内容根据idFilter中的值进行过滤。我通过formName上的以下代码实现了这一点:

private sub idFilter_change()
    Me.subReportName.report.filter = "id = """ & me.idFilter.value &""""
    Me.subReportName.report.filteron = true
End sub

当我将formName作为独立打开时,这段代码可以正常工作。但是一旦我将formName放入导航表单中,就会发生奇怪的行为:每次我更改idFilter中的值时,它都会返回运行时错误2467“您输入的表达式是指一个已关闭或不存在的对象”代码行:

Me.subReportName.report.filteron = true

更重要的是,idFilter中的值不是我改变的。 我错过了什么?如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

如果这是一个内置的导航表单,那么您的表单引用是不正确的。

内置导航表单实际上是在点击时加载的选项卡表单。

尝试制作自己的表单以方便使用,或者查看此主题以获取一些示例https://access-programmers.co.uk/forums/showthread.php?t=223306