您如何在基于多页的表单上动态标识当前控件

时间:2018-07-31 12:04:36

标签: excel vba forms

所以我想要实现的是每次选择新字段(或获得焦点)时在TextBox中显示帮助文本。我正在使用Excel 2013,我的Form有多个标签(多页表单)。

到目前为止,这是我所知道的可能:每次选择一个字段时,我都可以使用其中一个事件(即Click)来更新帮助文本框中的帮助文本(仅作参考之用,将帮助文本保留在工作表,每个字段都有一个标签。我使用此标签从工作表中提取帮助文本)。我无法弄清楚(或在网络上找到)的是如何动态地执行此操作:因此,当新的领域获得关注时,也许会有一个表单事件可以用来获取ActiveControl并将其传递给我的子对象? (拉出帮助文本)。

我尝试使用Myform.Click(和Multipage.Click)事件,但是当我单击新字段或使用Tab键跳转到新字段时,该事件不起作用

请告知我是否可以提供更多信息

非常感谢

1 个答案:

答案 0 :(得分:0)

除非我误解了您的需求,为什么不这样呢?

i=1; while [[ $i -le 50 ]]; do perl some_script.pl $i &; ((i+=1)); done;

您可以传递Private Sub TextBox1_Enter() UpdateHelp TextBox1 End Sub Private Sub TextBox2_Enter() UpdateHelp TextBox2 End Sub Private Sub TextBox3_Enter() UpdateHelp TextBox3 End Sub Private Sub TextBox5_Enter() UpdateHelp TextBox5 'this is on a multipage control End Sub Private Sub TextBox6_Enter() UpdateHelp TextBox6 'this is on a multipage control End Sub Private Sub UpdateHelp(ByRef c As Control) TextBox4.Text = c.Name End Sub ,但是对于多页控件上的控件,ActiveControl是父控件而不是TextBox。