Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 获取编译器错误(标识符无效)_Excel_Vba_Compiler Errors - Fatal编程技术网

Excel 获取编译器错误(标识符无效)

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

如上所述,在我下面的代码中,我得到一个编译器错误,告诉我有一个无效的标识符。我真的看不出问题所在,基本上这是一个非常简单的代码。问题应该出在使用backcolor函数的行中

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解决了这个问题