2013-12-15 79 views
0

我想下面的代码从访问数据库,但获取错误91,请建议如何删除错误。获取运行时错误91 [对象变量或块变量未设置]

Private Sub CommandButton1_Click() 

    Dim con As ADODB.Connection 

    Dim rs As ADODB.Recordset 

    Dim strConn As String 

    Set con = New ADODB.Connection 

    con.Mode = adModeReadWrite 

    If con.State = adStateClosed Then 

     strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & "C:\temp\db2.mdb;Persist Security Info=False;" 

     con.ConnectionString = strConn 

     con.Open 

    End If 

    Dim startRow As Integer 

    ***Set rs.ActiveConnection = con*** 

    rs.Open "select * from tbl_name" 
    startRow = 3 
    Do Until rs.EOF 
     Cells(startRow, 4) = rs.Fields(0).Value 
     rs.MoveNext 
     startRow = startRow + 1 
    Loop 

    rs.Close 
    Set rs = Nothing 
    con.Close 
    Set con = Nothing 
End Sub 
+0

谢谢乔,现在我明白了..现在它的工作.. – user3103991

回答

3

您致电:

rs.ActiveConnection = con 
rs.Open 

不首先创建记录的一个实例:

Set rs = New ADODB.RecordSet 
0

我在测试的应用程序有此错误。

在我的特殊情况下,应用程序使用的Oracle Home存在问题。因此,数据源无法访问。

相关问题