2011-10-25 3 views
0

쿼리가 결과를 반환하는 경우에만 폼을 열 때 레이블을 표시하려는 Access 프로젝트가 있습니다.VB에서 Access로 DB에 연결하는 중 오류가 발생했습니다.

나는 다음과 같은 코드가 있습니다 :

Private Sub Form_Load() 
Dim stSQL As String 
Dim db As DAO.Database 
Dim rs As DAO.Recordset 

Set db = DBEngine.Workspaces(0).Databases(0) 

Dim cn As DAO.Connection 
Set cn = DAO.Connection 


cn.Provider = "Microsoft.Jet.OLEDB.4.0" 

cn.Open stdbName 
stSQL1 = "SELECT * FROM tbl_lessons" 
Set rs = db.OpenRecordset(stSQL1, dbOpenDynaset) 

If (rs Is Not Nothing) Then 
    If (rs.GetRows() > 0) Then 
     lbl_alert.Visible = True 
    Else 
     lbl_alert.Visible = False 
    End If 

End If 

나는 다음과 같은 오류를 받고 있어요 양식을 열려고하면 : 컴파일 오류 : 방법 또는 데이터 멤버는

를 찾을 수 없음 VB7에서 Access 2007 사용

누군가가 도와 줄 수 있습니까?

+0

VB7은 무엇입니까? 그리고 우리의 코드는 DAO보다는 ADO처럼 보입니다. DAO 만 바꾸면 안돼요. ADO 로의 연결. 연결? –

+0

다른 도구/언어의 MDB 만 사용하여 액세스를 사용하지 않는 경우 다시 태그하십시오 : "Jet"로 "ms-access"바꾸기 –

답변

0

참고 - VBA에서 컴파일 오류가 발생하면 코드 줄이 항상 강조 표시됩니다. 강조 표시된 선을주의 깊게 살펴보면 잘못한 점을 파악하는 데 도움이됩니다. 또한 폼을 실행하기 전에 항상 코드를 컴파일해야합니다. ("디버그"메뉴를 열고 "VBAProject 컴파일"을 클릭하십시오.)

많은 문제가있는 것처럼 보일 수 있습니다. 한 번에 하나씩 문제를 해결해야 할 것입니다. 계속해서 문제를 고치고 코드를 다시 컴파일하십시오.

  1. 1cn.Open stdbName1
    ->stdbname이 없습니다 당신이 우리를 보여 주었다 코드 어디에서나 정의된다.
  2. Dim stSQL As String
    -> 연결 문자열을 stSQL으로 정의했지만 코드에 stSQL1 = "..."을 사용했습니다. 변수 이름을 수정하십시오.
+0

감사합니다. 그러나, 나는 아직도 붙어있다. 나는 하루 종일 봤지만 좋은 자습서를 찾을 수 없습니다. 약 10 년 동안 내가하지 못한 것을하려고합니다. 그래서 바보 같은 질문에 사과드립니다 ... 내 액세스 DB에 연결하고 쿼리를 실행하고 결과로 무언가를하려고합니다. 세트. 누군가 어떻게 달성 될 수 있는지에 대한 간단한 설명을 들려 줄 수 있습니까? 감사합니다. – user1013176

+0

도움이된다면이 질문을 upvote하는 것이 좋습니다. 처음 질문에 답한 경우 동의하고 다른 도움이 필요하면 새로운 질문을하십시오. 개인적으로 Access 데이터베이스 연결에 대한 자습서가 없습니다. – Alain

관련 문제