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 找不到ActiveX组合框方法或数据成员_Excel_Vba_Methods_Combobox_Member - Fatal编程技术网

Excel 找不到ActiveX组合框方法或数据成员

Excel 找不到ActiveX组合框方法或数据成员,excel,vba,methods,combobox,member,Excel,Vba,Methods,Combobox,Member,我有一个组合框(名为userBox),位于名为Home的工作表中。它选择了一个选项,比如说“User A”。我所要做的就是将“用户A”分配给stringusr,但我一直得到编译错误: 找不到方法或数据成员 编辑:我在新工作簿中尝试了一个虚拟程序,它成功了。使用activeX组合框,为什么会有所不同 Sub blah() Dim rly As String rly = Sheets(1).ComboBox1.Value ThisWorkbook.Sheets(1).Cells(1, 10) = r

我有一个组合框(名为
userBox
),位于名为
Home
的工作表中。它选择了一个选项,比如说
“User A”
。我所要做的就是将
“用户A”
分配给string
usr
,但我一直得到编译错误:

找不到方法或数据成员

编辑:我在新工作簿中尝试了一个虚拟程序,它成功了。使用activeX组合框,为什么会有所不同

Sub blah()
Dim rly As String
rly = Sheets(1).ComboBox1.Value
ThisWorkbook.Sheets(1).Cells(1, 10) = rly 
End Sub

单元格J1返回在组合框中选择的值。

如果它是ActiveX控件,则需要使用
OLEObjects
集合来访问它:

Debug.Print ws.OLEObjects("userBox").Object.Text

对不起,从那以后我一直在编辑这篇文章。我的虚拟程序在使用ActiveX combobox并使用工作表范围内的.combobox.value提取值时工作。不能像第一个示例中那样使用
工作表
对象访问
对象
。如果您将工作表声明为
Variant
Object
,它应该可以工作。或者,只需使用
OLEObjects()
,如上所示,这是访问ActiveX控件的推荐方法。不管怎样,它都会起作用。
Debug.Print ws.OLEObjects("userBox").Object.Text