【发布时间】:2017-12-11 00:06:24
【问题描述】:
在 Access 2003 中的 Form 类上具有以下代码:
Public currentId As Integer
Private Sub Form_Current()
Me.currentId = Me.id
' The following works fine
Debug.Print Forms!my_form_name.currentId
End Sub
...和相同连续形式的未绑定文本框(在设计视图中创建),如何从条件格式表达式访问.currentId 属性?
我想通过将表单的.currentId 值与其自身记录的实际[id] 值进行比较,使用未绑定的文本框突出显示当前选择的记录。
我尝试过的一些表达方式:
[id] = Me.currentId
[id] = Me!currentId
[id] = Me.Form.currentId
[id] = Forms!my_form_name.currentId
[id] = Forms!my_form_name!currentId
[id] = Forms!my_form_name!Form.[currentId]
[id] = Forms!my_form_name!Form!currentId
[id] = Forms!my_form_name!Form[currentId]
[id] = Forms!my_form_name![currentId]
[id] = Forms![my_form_name].[currentId]
[id] = Forms![my_form_name]![currentId]
...等等,等等,等等。基本上我能想到的任何变体。
我也尝试过创建Public Function getCurrentId(),但这也无济于事。当我在表达式中添加括号时它甚至会抱怨,如下所示:
[id] = Forms!my_form_name.getCurrentId()
...我或许应该将其视为条件格式表达式可能不允许使用这些更复杂的表达式。
那么,我错过了什么吗?或者,在这些条件格式表达式中,除了当前记录字段之外,确实根本不可能引用任何内容?
另一个可能很重要的细节是,在我使用的荷兰语版本中,Access 2003 在条件格式表达式对话框中将Forms 部分本地化为Formulieren。
【问题讨论】:
标签: ms-access vba expression conditional-formatting ms-access-2003