【问题标题】:Using VBA: Assign value to label control on userform使用 VBA:为用户窗体上的标签控件分配值
【发布时间】: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 关键字将不会引用用户表单,因此会导致错误。

标签: vba excel controls userform


【解决方案1】:

控件Me.S111是一个对象。

Dim objObject as Object '(Not type String)
Set objObject = Me.S111
objObject.BackColor = &HFFFF&

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 2018-02-20
    • 2020-04-04
    • 2021-05-12
    相关资源
    最近更新 更多