vba - 如何动态更新VBA形式的标签标题?

标签 vba excel label

我想根据工作表中存储的值动态设置标签数组(在 VBA 表单内)的标题。到目前为止,我可以像这样一一设置它们:

Label1.Caption = MySheet.Range("A1").Value
Label2.Caption = MySheet.Range("B1").Value
Label3.Caption = MySheet.Range("C1").Value ...

有很多遵循重复模式的标签,我想使用更智能的东西,例如:

'Method1
For i = 1 To X
    Dim MyLabel as Object: Set MyLabel = "Label" & i
    MyLabel.Caption = MySheet.Cells(i + 1, i).Value
Next i
'Method2
For i = 1 To X
    Label(i).Caption = MySheet.Cells(i + 1, i).Value
Next I
'Both Methods failed. I really appreciate some feedback on this.

最佳答案

使用Controls对象

For i = 1 To X
    Controls("Label" & i).Caption =  MySheet.Cells(i + 1, i).Value
Next

关于vba - 如何动态更新VBA形式的标签标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20677449/

相关文章:

excel - 取消选择表单控件列表框中的所有项目

excel - VBA/VB 中的类方法

excel - 如何使用vba从具有多个数据字段的Excel数据透视表中删除小计

Python tkinter 2秒后删除标签

vba - 当您有变量保存值时插入 COUNTIF 公式

ms-access - Access VBA - 我如何在 VBA 中有一个循环来允许我循环控制名称

excel - 无法拆分多个特殊字符

html - 在居中文本输入的顶部左右对齐标签

java - 如何在 JFrame 中的图像上添加文本?

excel - 使用引用 Excel VBA 将单行转换为单列