好吧,我认为这很简单,但是显然我仍然没有找到解决方案。
所以我想通过单击按钮清除列表框。
我使用了lstDatabase.RowSource = vbNullString
,但它擦除了整个数据以及标题。
如何清除列表框中的数据,但不保留标题?
您可以使用联合方法合并两个范围。如果您的整个数据都在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