Listbox ListFillRange

我在表单上插入了一个表单控件列表框。 出于某种原因,这个错误。

Sheet1.Shapes("ListBox1").ListFillRange = "A1:A10" 

我想填充范围的列表框,但我得到一个运行时错误“438”,对象不支持此属性或方法。 我在这里错过了什么?

如果它是表单列表框,使用这个:

 Worksheets("Sheet1").Shapes("ListBox1").ControlFormat.ListFillRange = "A1:A10" 

或者用Range对象:

 With Worksheets("Sheet1") .Shapes("ListBox1").ControlFormat.List = .Range("A1:A10").Value End With 

你会想要使用更类似于:

 Sheet1.ListBox1.ListFillRange = "A1:A10" 

您试图find名为“ListBox1”的Shape对象,然后运行Shape对象不具有的方法。

编辑v2:我看到,在这种情况下将需要一个演员(他们工作与vb.NET不同),我认为这可以工作:

 Dim myListBox as ListBox SET myListBox = Sheet1.Shapes("ListBox1") myListBox.ListFillRange = "A1:A10"