【问题标题】:Access VBA SubForm Not Filtering Other Subform When Embbedded in Navigation Form嵌入导航表单时访问VBA子表单不过滤其他子表单
【发布时间】:2013-04-16 16:08:20
【问题描述】:

我有一个未绑定的表单,其中两个子表单嵌入到导航表单中,如下所示:

在左侧的子表单上,我有以下与 CustomerName 字段的 OnFocus 事件相关的代码,它过滤右侧的子表单以显示从右侧选择的客户详细信息:

Private Sub CustomerName_GotFocus()

Forms!frmCustomers_sjh![Customer Address Form].Form.Filter = "CustomerName = '" & Me.CustomerName & "'"
Forms!frmCustomers_sjh![Customer Address Form].Form.FilterOn = True

End Sub

当我自己打开 frmCustomers_sjh 时,这很有效,但是当我从导航表单运行它时,它就崩溃了。我收到运行时错误“2450”,Access 找不到引用的表单“frmCustomers_sjh”。

我已经进行了足够的研究,知道在导航表单中运行代码是不同的,而且玩起来有点棘手,但我无法在这里解决这个问题。

注意事项:

  1. 不使用导航表单不是一种选择(客户要求)
  2. 拆分表格也不是一个选项,因为我需要一个搜索目录,右侧只有客户姓名,左侧有详细表格。
  3. 我对任何其他设计解决方案都持开放态度,因为我刚开始使用导航表单时对它的了解还很低。

【问题讨论】:

    标签: ms-access vba


    【解决方案1】:

    我解决了这个问题!

    我取出VBA代码,在未绑定表单的左侧子表单中放置了一个控制源设置为CustomerName字段的文本框。然后,我在该文本框和该表单中的 CustomerName 字段之间为右侧的子表单创建了父子关系!

    哇哦!

    link 帮了大忙!

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 欢迎来到 StackOverflow!如果您可以包含链接页面中的相关代码或课程,那就更好了。它使未来的访问者更容易,并且还可以防止链接失效。
      猜你喜欢
      • 1970-01-01
      • 2012-10-26
      • 2020-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多