2014-10-01 1 views
1

로그인 시스템을위한 간단한 코드입니다.Access VBA는 레코드 세트를 정의 할 수 없습니다.

실행할 때마다 다음과 같이 나타납니다. "컴파일 오류 : 사용자 정의 형식이 정의되지 않았습니다" 이것은 내가 전에 액세스 라인 "레코드로 희미한 rsLogin"

을 강조으로 본 적이 뭔가 어쨌든을 heres 나머지 코드 :

Private Sub Label15_Click() 

Dim StaffID, Password As String 
Dim Match As Integer 
Dim rsLogin As Recordset 

If IsNull(Me.Password) And IsNull(Me.StaffID) Then 
    MsgBox ("Please enter login information") 

End If 
If IsNull(Me.StaffID) Then                
MsgBox ("Please enter a Staff ID.") 

End If 
If IsNull(Me.Password) Then 
MsgBox ("Please enter a Password.") 

End If 

Match = 1 
StaffID = Me.StaffID                
Password = Me.Password 

Set rsLogin = CurrentDb.OpenRecordset("tblStaff", dbOpenDynaset)     
rsLogin.MoveFirst 

Do Until rsLogin.EOF = True               
    If rsLogin!StaffID = StaffID And rsLogin!Password = Password Then 
     gblUser = rsLogin!StaffID           
     Match = 2                 
     Exit Do 
    Else 
     rsLogin.MoveNext                
    End If 
Loop 

If Match = 1 Then 
MsgBox ("Incorrect StaffID and/or Password.")        
ElseIf Match = 2 Then                 
DoCmd.Close 
DoCmd.OpenForm ("frmMain") 

End If 


End Sub 

도움이 될 것입니다!

감사 DAO와

+0

어디에서'Recordset'을 정의합니까? – APerson

+0

액세스 버전? ADO 또는 DAO? – GSerg

+0

결과는 CurrentDb에 의해 할당되어 DAO 레코드 세트를 기대합니다. – Barry

답변

0

시도 접두사를 : 대한 참조가 누락되지 않은 경우

dim rsLogin as DAO.Recordset 

이 또한 확인. 누락 된 참조 (참조되지만 현재/설치되지 않음)는 또한 가장 기본 제공되는 내장 함수에서 컴파일러 오류를 발생시킵니다.

+0

코드를 편집하면 변경된 사항이 없습니다 .. 이상한 점 – Hsimmson

+0

디버그> 컴파일시 동일한 오류가 발생합니까? 이미 소형/수리를 시도 했습니까? – Barry

관련 문제