Excel 获取编译器错误(标识符无效)
如上所述,在我下面的代码中,我得到一个编译器错误,告诉我有一个无效的标识符。我真的看不出问题所在,基本上这是一个非常简单的代码。问题应该出在使用backcolor函数的行中Excel 获取编译器错误(标识符无效),excel,vba,compiler-errors,Excel,Vba,Compiler Errors,如上所述,在我下面的代码中,我得到一个编译器错误,告诉我有一个无效的标识符。我真的看不出问题所在,基本上这是一个非常简单的代码。问题应该出在使用backcolor函数的行中 Sub addmaterial() Dim AMU As UserForm Set AMU = AddMaterialUserform1 Dim SCU As ComboBox Set SCU = AMU.SelectComboBoxUserform Dim APCU As ComboBox Set APCU = AddM
Sub addmaterial()
Dim AMU As UserForm
Set AMU = AddMaterialUserform1
Dim SCU As ComboBox
Set SCU = AMU.SelectComboBoxUserform
Dim APCU As ComboBox
Set APCU = AddMaterialUserform1.AddedPropertiesComboBoxUserform
Dim TextBoxObject As Combobox
Dim i As Integer
SCU.AddItem "Material"
SCU.AddItem "Material Group"
APCU.BorderColor.ColorIndex = 15
For i = 1 To 12
TextBoxObject = "Textbox" & i
AMU.TextBoxObject.BackColor.ColorIndex = 15
Next
AMU.Show
End Sub
猜测一下,它不喜欢将字符串变量声明为与文本框相同的名称
您可能不喜欢将字符串变量声明为与文本框相同的名称您尝试将字符串分配给对象
TextBoxObject = "Textbox" & i
您可以使用AMU.Controls
-集合
Set TextBoxObject = AMU.Controls("Textbox" & i)
如果你没有参考资料,只需要名字
或者,如果其他对象上没有集合,请查看
CallByName(Object As Object, ProcName As String, _
CallType As VbCallType, Args() As Variant)`
`.您尝试将字符串分配给对象
TextBoxObject = "Textbox" & i
您可以使用AMU.Controls
-集合
Set TextBoxObject = AMU.Controls("Textbox" & i)
如果你没有参考资料,只需要名字
或者,如果其他对象上没有集合,请查看
CallByName(Object As Object, ProcName As String, _
CallType As VbCallType, Args() As Variant)`
`.对!我把暗盒换成了组合框。可悲的是,问题仍然存在。我认为ColorIndex是问题所在,因为它不存在。是的,你是对的@storax你知道除了RGB(x,x,x)之外是否还有其他可能设置颜色吗?哦!是的,您的右-Backcolor采用RGB值,因此该行应该是AMU.Textboxobject.Backcolor=8421504Right!我把暗盒换成了组合框。可悲的是,问题仍然存在。我认为ColorIndex是问题所在,因为它不存在。是的,你是对的@storax你知道除了RGB(x,x,x)之外是否还有其他可能设置颜色吗?哦!是的,您的右-Backcolor采用RGB值,因此,如果您认为还可以使用“UserForm1.TextBox1.Backcolor=&HFF00&”并从属性窗口获取颜色,则行应为AMU.Textboxobject.Backcolor=8421504。如果您认为还可以使用“UserForm1.TextBox1.Backcolor=&HFF00&”,并从属性窗口获取颜色。谢谢,我用AMU.Controls-Collection解决了这个问题谢谢,我用AMU.Controls-Collection解决了这个问题