使用 VBA:为用户窗体上的标签控件分配值
Posted
技术标签:
【中文标题】使用 VBA:为用户窗体上的标签控件分配值【英文标题】:Using VBA: Assign value to label control on userform 【发布时间】:2015-09-05 22:58:34 【问题描述】:我正在使用用户窗体后面的 VBA 代码。我有一个名为 block 的字符串变量,它对应于我的用户窗体上的文本标签的名称。在查看其他问题后,似乎使用控件功能可以控制用户窗体上标签的设置。块变量是标签名称的字符串。在下面的所有尝试中都会出错
Me.Controls(block).BackColor = &HFFFF&
当我尝试对其进行硬编码以确保它是标签的确切名称时,我仍然收到错误
Me.Controls("S111").BackColor = &HFFFF&
以下行确实有效:
Me.S111.BackColor = &HFFFF&
当我尝试类似的技术时,我得到另一个错误:
Me.block.BackColor = &HFFFF&
我做错了什么,我正在做的事情可能吗?
【问题讨论】:
我假设block
变量存储值“S111”。我说的对吗?
Me.Controls("S111").BackColor = &HFFFF&
为我工作。
Me.Controls(block).BackColor = &HFFFF&
也适合我
您收到的错误信息是什么?
代码是否真的在用户表单的代码模块中?否则Me
关键字将不会引用用户表单,因此会导致错误。
【参考方案1】:
控件Me.S111
是一个对象。
Dim objObject as Object '(Not type String)
Set objObject = Me.S111
objObject.BackColor = &HFFFF&
【讨论】:
以上是关于使用 VBA:为用户窗体上的标签控件分配值的主要内容,如果未能解决你的问题,请参考以下文章
C#winform 主窗体上的用户控件怎样调用主窗体的一个方法!