【发布时间】:2010-11-10 13:21:13
【问题描述】:
以下是在 VBA 应用程序中填充列表框的代码:
Private Sub Form_Open(Cancel As Integer)
''#Populate list box control.
Dim cnn As ADODB.Connection
Dim strSQL As String
Dim rst As ADODB.Recordset
Dim strList As String
On Error GoTo ErrHandler
''#Use DSN to Northwind.
''#Modify connection and connection string as needed.
Set cnn = New ADODB.Connection
cnn.Open "DSN=NorthwindExample"
strSQL = "SELECT * FROM Shippers"
Set rst = New ADODB.Recordset
rst.Open strSQL, cnn
strList = rst.GetString(adClipString, , ";", ",")
Debug.Print strList
Me.lstShippers.RowSource = strList
rst.Close
cnn.Close
Set rst = Nothing
Set cnn = Nothing
Exit Sub
ErrHandler:
MsgBox Err.No & ": " & Err.Description, vbOKOnly, "Error"
Set rst = Nothing
Set cnn = Nothing
End Sub
我需要知道我需要输入什么作为 DSN 字符串?我从哪里获得信息?
这段代码中的adClipString 是什么?
是否有任何选项可以在不使用 DSN 连接对象的情况下填充列表控件,因为我从同一个访问表中获取值?
【问题讨论】:
-
@SmartestVEGA:这是关于您在几分钟内提出的同一主题的第二个问题(另一个在这里:stackoverflow.com/questions/1123664)继续发布随机代码可能不是最好的主意你在互联网上挖掘的样本,要求人们修复它们,直到你找到一个有效的样本。如果你想完成任何事情,你将不得不在 VBA 上投入一些时间。
标签: sql vba forms ms-access listbox