2013-12-15 1 views
0

아래 코드를 사용하여 액세스 db에서 가져 오려고 시도했지만 오류 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

감사합니다. Joe, 이제 알았습니다. – user3103991

답변

3

당신은 전화 :

rs.ActiveConnection = con 
rs.Open 

먼저 레코드 집합의 인스턴스를 생성하지 않고 :

Set rs = New ADODB.RecordSet 
0

응용 프로그램을 테스트하는 동안이 오류가 있었다.

필자의 경우, 응용 프로그램에서 사용하는 Oracle Home에 문제가있었습니다. 따라서 데이터 원본에 연결할 수 없습니다.