VBA的Excel – 更新控制dynamic编址的用户窗体
我有一些静态控件的用户forms。 我创build了一个类模块来将事件处理程序应用到我dynamic添加到用户窗体的一组texbox上。 当我专门处理来自类模块的用户表单时,我可以更新静态控件中的值…
IAFStep2c.Controls("chkOptIn").Value = True
但是,当我尝试更新与他们的用户名在一个variables中的控件不起作用…
Dim oUserFOrm As Object Dim formName As String formName = "IAFStep2c" Set oUserFOrm = UserForms.Add(formName) oUserFOrm.Controls("chkOptIn").Value = True
我可以读取控件的值和其他属性,只是不更新它们。 有人可以提供解决scheme吗?
编辑
我用下面的类创build了另一个电子表格,结果相同。 TextBox1和3得到更新,textBox2不会。
Sub doStuff() 'MsgBox ("ping") Dim oUserFOrm As Object Dim formName As String formName = "frmTest" Set oUserFOrm = UserForms.Add(formName) frmTest.Controls("TextBox1").Value = oUserFOrm.Controls("TextBox2").Name oUserFOrm.Controls("TextBox2").Value = "PING" frmTest.Controls("TextBox3").Value = oUserFOrm.Controls("TextBox2").TextAlign
结束小组
这是我如何做到的:
UserForm1.Controls("Textbox1").Text = "123"
至less在我尝试的时候,它起作用了。 Office 2010。