我想将Access中的一些数据加载到Excel Userform ListBox中。我现在正在做的是创建ADODB.Connection
来连接访问权限并创建ADODB.Recordset
来存储数据,首先。其次,我使用Range("xx").CopyFromRecordset
将数据复制到excel表。第三,将excel范围命名为“ResultSet
”。第四,使用Me.ListName.RowSource="ResultSet"
将数据从Excel工作表复制到ListBox。
如您所见,我使用四个步骤完成这项工作。有没有办法跳过第2步和第3步,直接将数据从Access复制到ListBox?
由于
答案 0 :(得分:1)
我发现了一篇文章。以下是代码,这是link。
With rs
.MoveLast
NoOfRecords = .RecordCount
.MoveFirst
End With
'Set the number of ListBox columns = number of fields in the recordset
ListBox1.ColumnCount = rs.Fields.Count
'Load the listbox with the retrieved records
ListBox1.Column = rs.GetRows(NoOfRecords)
由于
答案 1 :(得分:0)
对于单列列表框
尝试使用循环手动编辑列表:
Me.ListName.Clear 'First clear existing list
With Me.ListName
While rs.EOF = False
.AddItem rs.Fields(0).Value
rs.MoveNext
Wend
End With
使用步骤2-4交换该代码。