Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: boehnli01 am Juli 21, 2013, 00:03:42

Titel: Dcount
Beitrag von: boehnli01 am Juli 21, 2013, 00:03:42
Hallo zusammen, bekomme mit diesem Befehl eine "Data type mismatch in criteria expression" msg. Kann mir bitte jemand sagen was ich korrigieren muss. Wahrscheinlich hat das etwas mit dem Datumsformat zu tun.

Danke für die Hilfe.


Private Sub DATE_AfterUpdate()

Dim calweek As String

'On Error Resume Next

    If DCount("Cal_week", "tbl_calender_prep_mitwkend", "Cal_date = '" & Forms![frm_Shift_Pattern]![DATE] & "'") = 0 Then Exit Sub
    calweek = DMin("Cal_week", "tbl_calender_prep_mitwkend", "Cal_week = '" & Forms![frm_Shift_Pattern]![WEEK] & "'")
   
   
    Let WEEK = calweek
   
End Sub
Titel: Re: Dcount
Beitrag von: DF6GL am Juli 21, 2013, 09:17:45
Hallo,


wenn denn noch bekannt wäre, welche Datentypen die einzelnen Tabellenfelder haben und wo sich der Code befindet, bräuchte man nicht zu raten..  Vermutlich:


Private Sub DATE_AfterUpdate()

Dim calweek As Long  '!!!!!!!!!!!!!!!!!!!

'On Error Resume Next
   If DCount("*", "tbl_calender_prep_mitwkend", "Cal_date = " & Format(Me![DATE] ,"\#yyyy-mm-dd\#") )  = 0 Then Exit Sub    'Date als Name VERMEIDEN!!!    
calweek = DMin("Cal_week", "tbl_calender_prep_mitwkend", "Cal_week = " &   Me![WEEK] )      ' Week als Name vermeiden !!!!   

   
   
  Let   Me![WEEK] = calweek  

End Sub
Titel: Re: Dcount
Beitrag von: boehnli01 am Juli 21, 2013, 21:24:01
Danke DF6GL, du hast natürlich recht. Zu wenig details.

Ich will das nach dem update von Feld DATE im Formular frm_Shift_Pattern sich das Feld WEEK von frm_Shift_Pattern gemäss tabelle
tbl_calender_prep_mitwkend updated. Ich will einfach die Woche im Feld WEEK haben nachdem ich das Feld DATE geändert haben wobei ich eine relation zwischen den beiden Daten herstellen will. Habe es mit Deiner Möglichkeit probiert, aber leider erfolgtlos. So hats auch nicht funtioniert.
 
Private Sub DATE_AfterUpdate()

Dim calweek As Long

    If DCount("*", "tbl_calender_prep_mitwkend", "Cal_date = " & Format(Me![DATE1], "\#yyyy-mm-dd\#")) = 0 Then Exit Sub
calweek = DMin("Cal_week", "tbl_calender_prep_mitwkend", "Cal_date = " & Format(Me![DATE1], "\#yyyy-mm-dd\#"))
   
   
   Let Me![WEEK] = calweek
End Sub
Titel: Re: Dcount
Beitrag von: DF6GL am Juli 21, 2013, 22:49:06
Hallo,

und wie heißt das "Date"-Feld nun?

lt.  Ereignisprozedur-Name heißt es nach wie vor "Date", In der Format-Funktion heißt es plötzlich "Date1" ???
Titel: Re: Dcount
Beitrag von: boehnli01 am Juli 22, 2013, 19:41:39
Hi - DATE1

Private Sub DATE1_AfterUpdate()
Dim calweek As Long

If DCount("*", "tbl_calender_prep_mitwkend", "Cal_date = " & Format(Me![DATE1], "\#yyyy-mm-dd\#")) = 0 Then Exit Sub
calweek = DMin("Cal_week", "tbl_calender_prep_mitwkend", "Cal_date = " & Format(Me![DATE1], "\#yyyy-mm-dd\#"))

Me![WEEK1] = calweek


End Sub
Titel: Re: Dcount
Beitrag von: DF6GL am Juli 22, 2013, 20:53:07
Halo,

die Frage nach den Tabellenfeld-Datentypen steht noch im Raum..

Und was genau steht im Steuerelment "Date1" , bzw. was wird dort eingegeben ?
Titel: Re: Dcount
Beitrag von: boehnli01 am Juli 22, 2013, 21:37:16
Hi - in DATE1 wird das datum mit datenype Date/Time eingegeben.
Titel: Re: Dcount
Beitrag von: DF6GL am Juli 22, 2013, 21:49:52
Hallo,

ich versteh Dich nicht...


Was heißt denn:

Zitatin DATE1 wird das datum mit datenype Date/Time eingegeben.


1) Welchen Datentyp hat das Tabellen(!)-Feld ""Cal_date " in der Tabelle (dort nachsehen!) 
2) Welchen Datentyp hat das Tabellenfeld "Cal_week" in der Tabelle  (dort nachsehen!)?
3) Zeige mal ein Beispiel (Copy & Paste), was im FORMULAR-Feld "Date1" drinsteht.


Ansonsten lad die DB zum Ansehen hier hoch (datenreduziert und gezippt).
Titel: Re: Dcount
Beitrag von: boehnli01 am Juli 23, 2013, 22:28:16
Danke DF6GL - hat sich erledigt. Habe den Fehler gefunden.