2

场景)我有七个变量;labelKid1,labelKid2,...LabelKid3。我在单元格中搜索不为空的单元格,然后将值输入到标签中,从 labelKid1 开始,然后转到下一个标签。

问题)有没有办法让我们使用 for 循环来遍历这些变量?我的意思是我可以用诸如 labelKid + j 之类的东西以某种方式调用变量,其中 j 是 for 循环的值吗?这将使我能够更轻松地通过标签。

现在,我知道我可以通过将标签放入一个数组并使用 for 循环来调用它们的索引来做到这一点,但是有没有办法按照我上面所说的来做到这一点?

4

2 回答 2

3

不,VBA 不支持可变变量(因为它们在 PHP 中被调用)。正如你所说,你需要使用列表、字典或类似的东西。

于 2012-07-24T01:04:32.707 回答
2

UserForm1.Controls("labelKid" & i)您可以使用通过与 UserForm1 关联的名称调用任何表单控件来实现此目的

所以你需要这样的东西

Sub ControlName()
Dim i As Long
For i = 1 To 10
    UserForm1.Controls("labelKid" & i).Value = i 
Next
End Sub

希望这可以帮助!

于 2013-12-10T15:35:26.420 回答