关于control.name的愚蠢问题
嗨,tnx 4你的时间!我有一个小问题!
我需要动态引用一些控件,让我们检查一下示例!
我有 3 个禁用的组合框(cb_1、cb_2、cb_3)需要重新启用!
dim i as integer
for i = 1 to 3
[“cb_” & i].enabled = true
接下来
我知道在 Flash 中,你可以简单地使用 “” 来引用一个控件。在 VB 和 VBA 中也可以做一些 wai???
实际上,我使用:
dim s 作为字符串
dim ctr
作为控件,用于 i = 1 到 3
s=“cb:_” & i
对于 me 中的每个 ctr.controls
如果 ctr.name=s 则
ctr.enabled = true
goto cont
end if
next
cont:
next
let me know!!!!
**** Hidden Message ***** 听起来不错,你有什么问题吗?
你好,Bryco,
它工作得很好,但我需要使用12行代码,而不是4行
在许多其他情况下(我报告的示例只是一个简单的问题),我非常需要这个“函数”! 嗯,这里有一个较短的版本….
Dim i As Integer
Dim ctl As ComboBox
For i = 1 To 3
Set ctl = Me.Controls.Item("cb_" & i)
ctl.Enabled = True
Next
不够好,杰夫……那是6行 4<br>函数ControlOn(sName作为字符串)作为布尔值<br>Me.Controls.Item(sName)。已启用=真<br>控制ON=真<br>结束函数
tnx Jeff,我已经测试了您的解决方案,但它无法正常工作,也许它可以在.net中工作,而不是在VBA中工作!
我稍后会再次测试它。
嗨Bryco,
太好了,它工作正常!TNX很多!
[蜂鸣器]
错!
它是一个函数,你需要一行来调用它,所以它是5而不是4 仅供参考,我只在VBA中进行了测试.....它对我来说工作得很好。但我更喜欢Bryco的函数。
页:
[1]
2