在表单上的标签或文本框中显示字段的描述

时间:2012-10-17 17:21:34

标签: vba ms-access

我想要做的是在表单上的标签中显示当前所选字段的说明。我觉得它当前正在显示的位置(左下方状态栏)几乎不可察觉。

如何在状态栏中访问该值?例如,在我的表单上,当我选择了员工姓名字段时,在左下角的小字体中显示“您正在注册的员工的姓名。”

我知道在某些情况下,我需要代码

 me.lblControlDescription.Caption = me.statusbar.caption

如何访问VBA状态栏(字段说明)中的文本?

1 个答案:

答案 0 :(得分:0)

状态栏中的文本是当前字段的Description属性。

在VBA中,您可以访问表单记录集中字段的Description

Debug.Print Me.Recordset.fields("id").Properties("Description")

因此,如果您有一个名为lblDescription的标签控件,则可以将其.Caption值设置为字段Description

Me.lblDescription.Caption = Me.Recordset.fields("id").Properties("Description")

但是,这可能会更复杂。 Description是用户创建的属性,这意味着在为其赋值之前它不存在。并且,如果您有一个集合,但稍后删除其值,则该属性本身不再存在。

如果您尝试在Description不存在时检索Me.lblDescription.Caption,则VBA将抛出错误#3270,“找不到属性”。您可以捕获该错误,并在发生时将vbNullString设置为Me.lblDescription.Caption

当更改{{1}}时,您还需要的策略。您可以创建一个过程来根据当前活动控件进行设置。然后从每个表单控件的焦点事件中调用该过程。可能有更好的方法,但我现在还没有看到。