VBA记录集函数参数不是可选错误

时间:2019-04-25 13:57:59

标签: excel vba adodb recordset

我想使用一个函数轻松地在多个子目录中执行对sql-server数据库的查询,而这些子目录都没有连接到数据库的必要代码行。

Function rs(query As String) As ADODB.Recordset
Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection

'connect to the DB
cnn.ConnectionString = "omitted"
cnn.Open

Set rs = cnn.Execute(query)
End Function

该函数工作正常,但是如果我想确定常规子目录中检索到的记录数,则会出现以下错误

  

编译错误:参数不可选

Private Sub UserForm_Initialize()

rs "omitted, but working query"

'ERROR ON THE FOLLOWING LINE
maxrows = UBound(rs.GetRows(1000000), 2)
rs.MoveFirst
    With Me.ComboBox1
        .Clear
        Do
            .AddItem rs![Table Name]
            rs.MoveNext
        Loop Until rs.EOF
    End With


End Sub

由于查询结果被声明为记录集对象,我无法理解此错误的原因

1 个答案:

答案 0 :(得分:0)

要早于某些时间删除