如何清除列表框中的数据

问题描述 投票:0回答:1

好吧,我认为这很简单,但是显然我仍然没有找到解决方案。

所以我想通过单击按钮清除列表框。

我使用了lstDatabase.RowSource = vbNullString,但它擦除了整个数据以及标题。

如何清除列表框中的数据,但不保留标题?

excel vba listbox userform
1个回答
0
投票

您可以使用联合方法合并两个范围。如果您的整个数据都在Range(“ A1:E10”)中,其中Range(“ A1:E1”)是标题,而Range(“ A2:E10”)是记录;那么您可以定义两个范围-一个标头和一个记录头。将它们与联合方法结合。在组合lstDatabase列表框中使用组合范围。当您要清除列表框时,请设置rowsource =标头范围。

Dim header as Range, records as Range, allData as Range
Set header = Range("A1:E1")
Set records = Range("A2:E10")
'Combine header and records into allData
Set allData = Union(header, records)
'Populating the listbox like
lstDatabase.RowSource = allData
'Clear the listbox like, keeping header only.
lstDatabase.RowSource = header
© www.soinside.com 2019 - 2024. All rights reserved.