我有一个带有UserForm 1-8的ComboBoxes,每个人在UserForm_Activate上的ws上的指定单元格中获取文本。如果ComboBox1.Value = "“,我已经将ComboBoxes 2-8设置为.Visible=False。
是否有一种方法可以使用缩写代码为每个ComboBox设置.Visible=False,而不分别列出每个ComboBox?我在下面添加了我现在使用的内容,但我经常创建这样的表单,我宁愿使用"Dim i as Integer / For i =“类型,而只需在需要的地方复制和粘贴。提前谢谢你!
If ComboBox1.Value = "" Then
ComboBox2.Visible = False
ComboBox3.Visible = False
ComboBox4.Visible = False
ComboBox5.Visible = False
ComboBox6.Visible = False
ComboBox7.Visible = False
ComboBox8.Visible = False发布于 2020-02-23 18:18:54
间接引用控件
通过Controls()使用间接引用并尝试
Dim i As Long, current As Long
current = 1 ' << change to the combobox to be excepted
For i = 1 to 8 ' loop through all comboboxes
Me.Controls("ComboBox" & i).Visible = False
Next i
Me.Controls("ComboBox" & current).Visible = Truehttps://stackoverflow.com/questions/60123603
复制相似问题