我想要做的是在表单上的标签中显示当前所选字段的说明。我觉得它当前正在显示的位置(左下方状态栏)几乎不可察觉。
如何在状态栏中访问该值?例如,在我的表单上,当我选择了员工姓名字段时,在左下角的小字体中显示“您正在注册的员工的姓名。”
我知道在某些情况下,我需要代码
me.lblControlDescription.Caption = me.statusbar.caption
如何访问VBA状态栏(字段说明)中的文本?
答案 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}}时,您还需要的策略。您可以创建一个过程来根据当前活动控件进行设置。然后从每个表单控件的焦点事件中调用该过程。可能有更好的方法,但我现在还没有看到。