MSACCESS 2010 VBA Update Tabelle.
Hallo an Alle,
ich habe hier eine Aufgabe das ich nicht dahinterkomme.
Also ich will einen tb update machen und kriege den Fehler "Datentypenkonflikt in Kriterienausdruck", diese Fehlermeldung deutet darauf das die Eingabe auf beiden seiten nicht identisch sind (frm= TextBox und in der tb ist Datum/Uhrzeit) im frm habe eine TextBox mit der Eingabeformat "Datum, Kurz". Die tb ist der Felddatentyp auf "Datum/Uhrzeit" und als Format auch "Datum, Kurz". Wenn ich den Felddatentyp von "Datum/Uhrzeit" auf "Text" umstelle dann funktioniert es ohne Probleme das Update, aber ich brauche die Eingabe als "Datum/Uhrzeit".
Jetzt kommt das Problem der Umwandlung von text in den richtigen Datums wert für die Tabelle.
Habe schon alles mögliche durchgelesen, Know-Hows von MS, Forums in DE und ENG und nicht hat bisher gebracht.
Hier der Code:
strSql = "UPDATE tb_FZ SET KU = " & """" & Me.txtkufa & """" & ", Ma = " & """" & Me.txtmarkfa & """" & ", Mo = " & """" & Me.txtmodfa & """" & ", AKzn = " & """" & Me.txtkzfa & """" & ", FsTypBl = " & """" & Me.txtfstypblfa & """" & ", Gtyp = " & """" & Me.txtgtypfa & """" & ", V = " & """" & Me.txtvfa & """" & ", Km = " & """" & Me.txtkmfa & """" & ", Bem = " & """" & Me.txtbemfa & """" & ", Fal = " & """" & Me.txtfalbfa & """" & ", UVV = " & """" & Me.txtuvvfa & """" & ", Intnr = " & """" & Me.txtintfa & """" & " WHERE FaID =" & Me.txtnrfaid
Danke im voraus für eure Hilfe.
ich habe hier eine Aufgabe das ich nicht dahinterkomme.
Also ich will einen tb update machen und kriege den Fehler "Datentypenkonflikt in Kriterienausdruck", diese Fehlermeldung deutet darauf das die Eingabe auf beiden seiten nicht identisch sind (frm= TextBox und in der tb ist Datum/Uhrzeit) im frm habe eine TextBox mit der Eingabeformat "Datum, Kurz". Die tb ist der Felddatentyp auf "Datum/Uhrzeit" und als Format auch "Datum, Kurz". Wenn ich den Felddatentyp von "Datum/Uhrzeit" auf "Text" umstelle dann funktioniert es ohne Probleme das Update, aber ich brauche die Eingabe als "Datum/Uhrzeit".
Jetzt kommt das Problem der Umwandlung von text in den richtigen Datums wert für die Tabelle.
Habe schon alles mögliche durchgelesen, Know-Hows von MS, Forums in DE und ENG und nicht hat bisher gebracht.
Hier der Code:
strSql = "UPDATE tb_FZ SET KU = " & """" & Me.txtkufa & """" & ", Ma = " & """" & Me.txtmarkfa & """" & ", Mo = " & """" & Me.txtmodfa & """" & ", AKzn = " & """" & Me.txtkzfa & """" & ", FsTypBl = " & """" & Me.txtfstypblfa & """" & ", Gtyp = " & """" & Me.txtgtypfa & """" & ", V = " & """" & Me.txtvfa & """" & ", Km = " & """" & Me.txtkmfa & """" & ", Bem = " & """" & Me.txtbemfa & """" & ", Fal = " & """" & Me.txtfalbfa & """" & ", UVV = " & """" & Me.txtuvvfa & """" & ", Intnr = " & """" & Me.txtintfa & """" & " WHERE FaID =" & Me.txtnrfaid
Danke im voraus für eure Hilfe.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 234904
Url: https://administrator.de/forum/msaccess-2010-vba-update-tabelle-234904.html
Ausgedruckt am: 23.12.2024 um 04:12 Uhr
6 Kommentare
Neuester Kommentar
Hallo Crashover,
also hier geht es einwandfrei wenn die Spalte in der Tabelle auf Datum/Uhrzeit steht und die Textbox auf Format = Datum,kurz eingestellt ist. Ich würde hier mal für die Daten einfache Hochkommas verwenden um die Werte einzuschließen.
Beispiel:
Ansonsten hast du noch folgende Möglichkeit für ein Datum:
Du wandelst das als Text vorliegende Datum der Textbox in das von Access verwendete universelle Format (yyyy-mm-dd) um (txtDate wäre im Beispiel die Textbox):
und übergibst es dann mit Rauten umschlossen so im SQL-String an:
Grüße Uwe
also hier geht es einwandfrei wenn die Spalte in der Tabelle auf Datum/Uhrzeit steht und die Textbox auf Format = Datum,kurz eingestellt ist. Ich würde hier mal für die Daten einfache Hochkommas verwenden um die Werte einzuschließen.
Beispiel:
strSql = "UPDATE tb_FZ SET KU = '" & Me.txtkufa & "'"
Ansonsten hast du noch folgende Möglichkeit für ein Datum:
Du wandelst das als Text vorliegende Datum der Textbox in das von Access verwendete universelle Format (yyyy-mm-dd) um (txtDate wäre im Beispiel die Textbox):
mydatestring = Format(DateValue(me.txtDate.Text), "yyyy-mm-dd")
strSql = "UPDATE tb_FZ SET KU = #" & mydatestring & "#"
Zitat von @CrashOver:
Hallo Uwe,
Wie gesagt, die beiden TextBoxen haben den Format = "Datum, kurz" und in der Tabelle steht der Felddatentyp auf
"Datum/Uhrzeit" und in den Feldeigenschaften der Tabelle habe auch als Format = "Datum, kurz".
Wie auch schon gesagt geht es hier mit einem SQL-Update Befehl einwandfrei, ich konnte deinen Fehler in keinster Weise triggern ! Der FehlerHallo Uwe,
Wie gesagt, die beiden TextBoxen haben den Format = "Datum, kurz" und in der Tabelle steht der Felddatentyp auf
"Datum/Uhrzeit" und in den Feldeigenschaften der Tabelle habe auch als Format = "Datum, kurz".
muss hier in deiner Datenbank oder deinem VBA-Code liegen. Ohne weitere Details deines Codes kommen wir hier nicht weiter ... Vermutlich hast du irgendwo noch ein Leerzeichen oder ähnliches zu viel in deiner Textbox oder deinem VBA-Code
Gibt es eine Möglichkeit es umzugehen?
habe ich oben bereits genannt !Grüße Uwe
Zitat von @CrashOver:
da noch eine Frage, gibt es die Möglichkeit einen von den beiden Datum TextBox leer zu lassen ("NULL") ohne
das er sagt "Typen unverträglich"?, denn er will jetzt auf beiden einem Datums wert haben.
Checke in deinem VBA-Code ob die Felder leer sind und passe deinen SQL-Befehl je nachdem ob etwas in den Textboxen steht oder nicht an. D.h. wenn sie leer sind, baust du sie erst garnicht in den Befehl ein...feddichda noch eine Frage, gibt es die Möglichkeit einen von den beiden Datum TextBox leer zu lassen ("NULL") ohne
das er sagt "Typen unverträglich"?, denn er will jetzt auf beiden einem Datums wert haben.
Grüße Uwe