dr.cornwallis
Goto Top

Syntaxfehler VBA

Liebe Gemeinde,

ich bräuchte Hilfe beim folgenden VBA Code(für Button in Access):

DoCmd.RunSQL "Insert Into BuchungenPT1039 (Name Mitarbeiter, Datum_von, Datum_bis, Zeit_von, Zeit_bis, KFZ) VALUES('" & Me.txtName.Value "', " & Me.datumvon.Value ", " & Me.datumbis.Value " , " & Me.zeitvon.Value " , " & Me.zeitbis.Value " ,'" & Me.KFZFeld.Value & "');"  

Könnte mir bitte jemand erklären was ich da falsch mache bzw. wann man ein ' setzen muss und wann nicht etc...ich kapiers einfach nicht.

Die Feldwerte sind entweder Texte oder Datum/Zeitangaben.


Danke für eure Hilfe!

Gruß

Dr.

Content-ID: 316528

Url: https://administrator.de/contentid/316528

Ausgedruckt am: 25.11.2024 um 00:11 Uhr

emeriks
Lösung emeriks 29.09.2016 um 14:29:32 Uhr
Goto Top
Hi,
Name Mitarbeiter
Feldname mit Leerzeichen?

E.
Dr.Cornwallis
Dr.Cornwallis 29.09.2016 um 14:58:14 Uhr
Goto Top
Hi,

guter Tipp, hätte ich komplett ignoriert face-smile, funktioniert dennoch nicht.....

Danke!

Gruß
emeriks
Lösung emeriks 29.09.2016 um 15:05:42 Uhr
Goto Top
Ich kenne mich jetzt nicht mit Access aus, aber ich denke, die Datum müssen in ' '

DoCmd.RunSQL "Insert Into BuchungenPT1039 (Name Mitarbeiter, Datum_von, Datum_bis, Zeit_von, Zeit_bis, KFZ) VALUES('" & Me.txtName.Value "', '" & Me.datumvon.Value "', '" & Me.datumbis.Value "' , '" & Me.zeitvon.Value "' , '" & Me.zeitbis.Value "' ," & Me.KFZFeld.Value & "');"  
AndreasHoster
Lösung AndreasHoster 29.09.2016 aktualisiert um 15:09:41 Uhr
Goto Top
Da fehlen ein paar & zur String Verkettung.
Und wenn man es nicht auf Anhieb sieht, dann muß man halt den String Stück für Stück aufbauen und jeden Schritt testen (am besten per MSGBOX ausgeben lassen, dann sieht man auch was beim SQL ankommt).

Und die ' haben nichts mit VBA Syntaxfehlern zu tun, die kommen erst zum tragen, wenn die SQL Engine es auswerten soll.
Mad-Eye
Lösung Mad-Eye 29.09.2016 um 15:08:12 Uhr
Goto Top
Hi,

denke das sollte so aussehen:

DoCmd.RunSQL "Insert Into BuchungenPT1039 (Name_Mitarbeiter, Datum_von, Datum_bis, Zeit_von, Zeit_bis, KFZ) VALUES('" & Me.txtName.Value & "', " & Me.datumvon.Value & ", " & Me.datumbis.Value & " , " & Me.zeitvon.Value & " , " & Me.zeitbis.Value & " ,'" & Me.KFZFeld.Value & "');"  
Um einen String zu Verknüpfen sollte es so ausshen:
"string" & variable & "string"  

Gruß,

Mad-Eye
SlainteMhath
Lösung SlainteMhath 29.09.2016 um 15:10:17 Uhr
Goto Top
Moin,

die Variablen im "VALUES..." Part müssen jeweils mit & vor UND nach dem Variablennamen eingebunden werden:

falsch:
" & Me.datumvon.Value "  

Richtig:
" & Me.datumvon.Value & "  

lg,
Slainte