在VBA中的Listbox中动态填充值

时间:2015-10-31 19:26:12

标签: vba excel-vba excel

先谢谢。

我在“Sheet1”中有一个列表框(比如说lstbox),在“Sheet2”的列A中有一个值范围。 列表框应从Sheet2中的列A动态填充值。我也尝试过命名参考,但它不起作用。 对此有任何帮助非常感谢

1 个答案:

答案 0 :(得分:1)

首先,您需要创建一个动态名称范围,方法是进入“公式”标签,点击“名称管理器”并插入“新建“按钮。

输入范围名称(我将名称命名为 TestValue ),然后在“参考区域”中使用以下公式作为“ = OFFSET(Sheet2!$ A $ 1,0,0,COUNTA(Sheet2!$ A:$ A),1)”没有引号。

之后转到第1页并从ActiveX控件添加ListBox。右键单击它将转到“查看代码”。

删除其中的所有内容并输入以下代码。

Private Sub ListBox1_GotFocus()
    ListBox1.ListFillRange = "TestValue"
End Sub

就是这样。当您单击列表框时,它将填充它。