2014-09-23 2 views
0

처음 게시하는 중 ... 아마도 이것은 간단 할 것 같아서 사전에 사과드립니다. 이것은 실제로 처음으로 VBA에서 일하는 것이고 문제가 생겼습니다. 나는 여러 가지를 수색하고 시도했지만, 내가 시도해도 아무리 똑같은 문제가있다.Access 데이터베이스 런타임 오류 13 형식 불일치

것은 내가 다른 컴퓨터로 데이터베이스를 이동 한 지금은 디버거가 라인 28에서 말한다 런타임 오류 (13)를 얻을 :

Me!odf = CVDate("01.01.1800") 

특정하여 데이터베이스를 검색을위한 새로운 창을 여는 버튼을 클릭하면 그건 사용자가 설정 한 기준. 팀처럼

VERSION 1.0 CLASS 
BEGIN 
    MultiUse = -1 'True 
END 
Attribute VB_Name = "Form_Pregledt" 
Attribute VB_Creatable = True 
Attribute VB_PredeclaredId = True 
Attribute VB_Exposed = False 

Option Compare Database 
Private Sub Angioloski_Click() 
    Forms!PREGLEDT!Pregledf.Form!Idpregleda.RowSource = "SELECT [Qpregledt].[Idpregleda], [Qpregledt].[Datum], [Qpregledt].[Prezime i ime], [Qpregledt].[Godina rodjenja], [Qpregledt].[Adresa], [Qpregledt].[Telefon], [Qpregledt].[Faks], [Qpregledt].[e-mail] FROM [Qpregledt] WHERE [VRSTA PREGLEDA]=FORMS!PREGLEDT!VRSTA AND [ANGIOLOSKI]=FORMS!PREGLEDT!ANGIOLOSKI and datum>=forms!pregledt!odf and datum<=forms!pregledt!dof " 
    Forms!PREGLEDT!Pregledf.Form!Idpregleda.Requery 
    Forms!PREGLEDT!Pregledf.Form!ukupno.Caption = "Ukupno: " & Forms!PREGLEDT!Pregledf.Form!Idpregleda.ListCount 
    Me.Refresh 
End Sub 

Private Sub do_AfterUpdate() 
If IsNull(Me!od) = True Then 
Me!odf = CVDate("01.01.1800") 
Else 
Me!odf = Me!od 
End If 
If IsNull(Me!do) = True Then 
Me!dof = CVDate("01.01.2800") 
Else 
Me!dof = Me!do 
End If 
Forms!PREGLEDT!Pregledf.Form!Idpregleda.Requery 
Forms!PREGLEDT!Pregledf.Form!ukupno.Caption = "Ukupno: " & Forms!PREGLEDT!Pregledf.Form!Idpregleda.ListCount 
Me.Refresh 
End Sub 

Private Sub Form_Load() 
Forms!PREGLEDT!Pregledf.Form!ukupno.Caption = "Ukupno: " & Forms!PREGLEDT!Pregledf.Form!Idpregleda.ListCount 
Me!odf = CVDate("01.01.1800") 
Me!dof = CVDate("01.01.2800") 
Forms!PREGLEDT!Pregledf.Form!Idpregleda.Requery 
Forms!PREGLEDT!Pregledf.Form!ukupno.Caption = "Ukupno: " & Forms!PREGLEDT!Pregledf.Form!Idpregleda.ListCount 
Me.Refresh 
End Sub 

Private Sub od_AfterUpdate() 
If IsNull(Me!od) = True Then 
Me!odf = CVDate("01.01.1800") 
Else 
Me!odf = Me!od 
End If 
If IsNull(Me!do) = True Then 
Me!dof = CVDate("01.01.2800") 
Else 
Me!dof = Me!do 
End If 
Forms!PREGLEDT!Pregledf.Form!Idpregleda.Requery 
Forms!PREGLEDT!Pregledf.Form!ukupno.Caption = "Ukupno: " & Forms!PREGLEDT!Pregledf.Form!Idpregleda.ListCount 
Me.Refresh 
End Sub 

Private Sub vrsta_Click() 
If Me!vrsta = 1 Then 
Me!Angioloski.Enabled = True 
Else 
Me!Angioloski.Enabled = False 
Me!Angioloski = Null 
End If 
If IsNull(Me!vrsta) = False Then 
If IsNull(Me!Angioloski) = True Then 
    Forms!PREGLEDT!Pregledf.Form!Idpregleda.RowSource = "SELECT [Qpregledt].[Idpregleda], [Qpregledt].[Datum], [Qpregledt].[Prezime i ime], [Qpregledt].[Godina rodjenja], [Qpregledt].[Adresa], [Qpregledt].[Telefon], [Qpregledt].[Faks], [Qpregledt].[e-mail] FROM [Qpregledt] WHERE [VRSTA PREGLEDA]=FORMS!PREGLEDT!VRSTA and datum>=forms!pregledt!odf and datum<=forms!pregledt!dof " 
Else 
    Forms!PREGLEDT!Pregledf.Form!Idpregleda.RowSource = "SELECT [Qpregledt].[Idpregleda], [Qpregledt].[Datum], [Qpregledt].[Prezime i ime], [Qpregledt].[Godina rodjenja], [Qpregledt].[Adresa], [Qpregledt].[Telefon], [Qpregledt].[Faks], [Qpregledt].[e-mail] FROM [Qpregledt] WHERE [VRSTA PREGLEDA]=FORMS!PREGLEDT!VRSTA AND [ANGIOLOSKI]=FORMS!PREGLEDT!ANGIOLOSKI and datum>=forms!pregledt!odf and datum<=forms!pregledt!dof" 
End If 
End If 
Forms!PREGLEDT!Pregledf.Form!Idpregleda.Requery 
Forms!PREGLEDT!Pregledf.Form!ukupno.Caption = "Ukupno: " & Forms!PREGLEDT!Pregledf.Form!Idpregleda.ListCount 
Me.Refresh 
End Sub 

Private Sub izlaz_Click() 
'On Error GoTo Err_izlaz_Click 
On Error Resume Next 

    DoCmd.Close 

Exit_izlaz_Click: 
    Exit Sub 

Err_izlaz_Click: 
    MsgBox Err.Description 
    Resume Exit_izlaz_Click 

End Sub 
+0

시도가 날짜를 분리합니다. ':) – Tim

+0

고마워! 이것은 내 문제를 해결 :) –

답변

0

이 코멘트에, 당신의 날짜 구분이 잘못 말한다 : 여기에

는 코드입니다. 그러나 개인적으로 나는 처음부터 문자열의 모호성을 (? 01/03/02 어떤 날짜입니다) 피하고 DateSerial 기능을 사용하십시오 : /`대신`의`으로

Me!odf = DateSerial(1800, 1, 1) 
+0

고마워, 내가이 문제를 해결했습니다 :) –

+0

위대한! 이 경우 제 대답을 수락하십시오 :) – Tim

관련 문제