excel 用户表单中列表框的动态行源

Dynamic rowsource for listbox in excel user form

我对 ms excel 中用户窗体中的列表框控件有疑问。

如何将搜索限制为列表框中最近的 10 条记录而不是全部?

此代码如何适用于列表框行源?

.lstDatabase.RowSource = "Database! A & iRow-10 & :I" & iRow

请试试这个代码。它假定“lstDatabase”是您的列表框名称:

Sub LoadLast10Rows()
 Dim sh As Worksheet, arr10 As Variant, lastRow As Long
 Set sh = ActiveSheet 'use here the sheet you need. Maybe Sheets("Database")
 lastRow = sh.Range("A" & Rows.Count).End(xlUp).row
 arr10 = sh.Range("A" & lastRow - 10 & ":A" & lastRow).Value
 Me.lstDatabase.list = arr10
End Sub