【问题标题】:Got Error 3001 on RecordSet, don't know whyRecordSet 上出现错误 3001,不知道为什么
【发布时间】:2019-02-27 23:30:56
【问题描述】:

我正在尝试从我的 MariaDb 5 中获取 4 列,但虽然它通常适用于此代码,但我现在收到错误 3001

错误 3001 - 参数类型错误、超出可接受范围或相互冲突

这是代码(到目前为止)

Sub Rempli_contacts()

    Dim rs As ADODB.Recordset
    Dim Derligne As Integer, i As Integer
    Dim Requete As String

    Set rs = New ADODB.Recordset
        ConnectionDB

    Requete = "SELECT Ref,Nom,Marque,PrixVente FROM Produits_Beta"
            rs.Open Requete, oConnect
End Sub

我在rs.Open Requete, oConnect 线上收到错误

【问题讨论】:

  • oConnect 在哪里定义/创建?还有ConnectionDB是什么?
  • 在另一个模块的顶部,命名 AcessSQl Public oConnect As ADODB.Connection
  • 在此行之前打开/创建是否正常?
  • 好的,这让我明白了。当我启动 Userform 时它起作用了,因为它之前加载了 AccessSQL。因此,它当然不适用于简单的 F5。谢谢内森:)

标签: sql vba mariadb adodb recordset


【解决方案1】:

正如 Nathan_Sav 指出的,我显然需要在之前加载 oConnect,现在它可以完美运行(Welp,还不能让它填充 ListBox 的列,但那是另一回事了)

简答: 如果收到此消息,请在执行此宏之前检查所有变量是否已加载。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-07
    • 1970-01-01
    • 1970-01-01
    • 2020-11-04
    • 2020-02-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多