【问题标题】:Fill ListBox using SQL stored procedure使用 SQL 存储过程填充 ListBox
【发布时间】:2014-08-25 13:04:57
【问题描述】:

我正在开发 VBA MS Access 应用程序,需要通过在 ADO 环境中执行存储过程来填充 ListBox。下面是我的代码……这段代码在主窗体加载时执行。

sql 连接一切正常,使用Debug.Print 进行调试时,我可以确认数据已成功获取。但我在最后一行遇到错误..请需要帮助。下面是我填充列表框的代码......

Dim rs As ADODB.Recordset

Set AdoCn = New ADODB.Connection

Set AdoCmd = New ADODB.Command

AdoCn.Open AdoConnectionString

AdoCmd.ActiveConnection = AdoConnectionString

Set rs = New ADODB.Recordset

AdoCmd.CommandType = adCmdStoredProc
    AdoCmd.CommandText = "TestListReview"
     Set rs = AdoCmd.Execute

     rs.CursorLocation = adUseClient
    rs.Open cmd, , adOpenForwardOnly, adLockOptimistic, dbSeeChanges
   Set Me.lstReview.RowSourceType = "Table/Query"

    Set Me.mylstbox.Recordset = rs

Set rs = Nothing
Set cn = Nothing

【问题讨论】:

  • 显示错误信息
  • 您遇到了哪个错误?
  • 我猜你需要用Set AdoCn = Nothing替换Set cn = Nothing
  • @Horaciux 它的运行时间错误 3705:对象打开时不允许操作。
  • @DeepSharma 哥们,我在上面提到过..

标签: sql vba database ms-access ms-access-2010


【解决方案1】:

您尚未创建名为 cn 的连接。您创建的连接称为 AdoCN。您正在尝试关闭一个不存在的对象。按照 Horaciux 的建议,将最后一行更改为 Set AdoCn = nothing。

【讨论】:

    猜你喜欢
    • 2013-02-27
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多