小编kis*_*ert的帖子

子表单引用引发错误 2455:您输入的表达式对属性表单/报告具有无效引用

昨天,一个对我来说很好用的表单/子表单突然开始抛出 Error 2455: You entered an expression that has an invalid reference to the property Form/Report.

以下是我对问题的诊断。感觉是个bug。

我的问题是:你们有没有人见过这个?如果你有兴趣,你能不能尝试复制这个问题,让我知道你发现了什么?

问题:

  • 我有一个完全独立的表单,为它的每个子表单设置记录源
  • 但是当表单被放入子表单控件时失败,当尝试设置 SubForm.Form.RecordSource 属性时,每个子表单都会抛出错误 2455 (但同样,仅当表单本身是子表单时)

经过大量的实验,我把范围缩小到这个:

  1. SubForm 控件太短,无法显示表单的详细信息部分。只有标题可见。
  2. 由于表单的详细信息不可见,Access 默默地禁用了表单下的所有子表单!!!

我的解决方法:始终确保表单的 Detail 部分的至少一部分在 SubForm 控件中可见。任何一个:

  • 增加子窗体控件的高度
  • 将控件从表单标题移动到详细信息,并使标题更短或不可见,以便仅显示详细信息。

你能复制这个吗?这很奇怪,所以我想对这个问题进行一些独立的确认。所以,如果你有一点时间,请尝试以下步骤:

  1. 制作一个表格:
    • 包含孙窗体的子窗体控件
    • 一个表头部分,高 0.5 英寸
  2. 在父子窗体控件中将此窗体添加为子窗体
  3. 工作案例:
    • 将父级的子窗体高度设置为 0.6 英寸,以便子级的详细信息部分可见
    • 在代码中,引用子窗体的 subform.Form.RecordSource 属性(孙子窗体)。
    • 期望:没有错误
  4. 失败案例:
    • 现在,将父子窗体高度设置为 0.4 英寸,因此细节不可见
    • 重新运行涉及子窗体 subform.Form.RecordSource 属性的代码。
    • 预期:运行时错误 …

ms-access vba

5
推荐指数
2
解决办法
6553
查看次数

标签 统计

ms-access ×1

vba ×1