我有一个ADODB记录集,它是我从一个模块传递给一个表单的。我需要显示记录集的现有字段,但它似乎不起作用。记录集已成功传递,如快速Debug.Print
所示。下面是我的代码:
模块:
Public Sub dofilter()
...
With ADORec
Set .ActiveConnection = ADOConn
.Source = SQL
.LockType = adLockReadOnly
.CursorType = adOpenKeyset
.CursorLocation = adUseClient
.Open
End With
Call Form_FormA.setrst(ADORec)
End Sub
然后在FormA中:
Public Sub setrst(ByVal rst As ADODB.Recordset)
Set Me.Recordset = rst
Me.txtField.ControlSource = rst.Fields("ID").Name
End Sub
表单中的ID
字段仍为空。希望你们能帮上忙。
发布于 2019-06-02 23:54:30
首先,我建议您先看看ControlSource的文档。此属性不是从记录集中填充文本框的正确属性。
然后我会用Me.txtField.value = rst.Fields("ID").Name
代替Me.txtField.ControlSource = rst.Fields("ID").Name
。这可能就是你想要的。
另一个建议是不使用global default instance of a userform
更新:根据注释,如果您想要显示所有记录和以下代码行ListBox1.Column = rst.GetRows
,则需要一个列表框。您应该使用足够的列来定义列表框。
https://stackoverflow.com/questions/56416193
复制相似问题