Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.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 ListFillRange来自另一张图纸_Excel_Vba - Fatal编程技术网

Excel ListFillRange来自另一张图纸

Excel ListFillRange来自另一张图纸,excel,vba,Excel,Vba,我正在尝试使用另一个工作表中的.ListFillRange填充组合框,但是列表没有填充 我在单元格A2:A3000中有“sheet1”上的组合框和“sheet2”上的数据 从表1中,我尝试使用: set ws = ThisWorkbook.Worksheets("sheet2") set Rng = ws.Range("A2:A3000") ComboBox.ListFillRange = ws.Range(Rng) 我也试过了 ComboBox.ListFillRange = ws.Rang

我正在尝试使用另一个工作表中的.ListFillRange填充组合框,但是列表没有填充

我在单元格A2:A3000中有“sheet1”上的组合框和“sheet2”上的数据

从表1中,我尝试使用:

set ws = ThisWorkbook.Worksheets("sheet2")
set Rng = ws.Range("A2:A3000")
ComboBox.ListFillRange = ws.Range(Rng)
我也试过了

ComboBox.ListFillRange = ws.Range("sheet2!A2:A3000")

但是没有填充组合框,有什么建议吗?

ListFillRange是一个字符串,因此您需要输入范围的地址。由于范围在另一张纸上,您需要限定该地址。幸运的是,Address属性有一个外部参数

Sheet1.ComboBox1.ListFillRange = Sheet2.Range("A2:A3000").Address(, , , True)
Address属性将如下所示

?Sheet2.Range("A2:A3000").Address(, , , True)
[Book2]Sheet2!$A$2:$A$3000
但是控件理解并转换它

?sheet1.ComboBox1.ListFillRange
Sheet2!$A$2:$A$3000
话虽如此,我从不使用ListFillRange。我更喜欢使用列表或AddItem自己填充控件