ich verzweifle momentan ein datetime Field in einer SQL-Datenbank mittels VBA zu füllen.
Datetime gibt laut der offiziellen Seite das Format yyyy-mm-dd hh:nn:ss an (https://msdn.microsoft.com/de-de/library/ms187819%28v=sql.120%29.aspx)
Ich habe mir also einen String zusammengebaut, der exakt dieses Format aufweist:
Sub bsp
str_time1 = WorksheetFunction.Text(ws.Cells(i, 9), "hh:MM:ss")
str_time2 = WorksheetFunction.Text(ws.Cells(i + 1, 9), "hh:MM:ss")
str_date = WorksheetFunction.Text(ws.Cells(i, 10), "yyyy-mm-dd")
ges_datetime1 = str_date & " " & str_time1
ges_datetime2 = str_date & " " & str_time2
End Sub
Wenn ich nun meinen SQL Insert-String aufrufe:
sub test
sSQL = "INSERT INTO Zeiterfassung (ZeitAnfang,ZeitEnde) VALUES(" & ges_datetime1 & " , " & ges_datetime2 &")
end sub
Sieht der zusammengebaute String so aus:
INSERT INTO Zeiterfassung (ZeitAnfang,ZeitEnde) VALUES (2015-11-03 08:00:00,2015-11-03 08:30:00)
Dabei erhalte ich immer den Fehler:
"Falsche Syntax in der Nähe von '08'.
Wie kann das sein? Muss ich das Format für die Übertragung anders wählen?
Über Hilfe wäre ich dankbar!
Gruß
Malte!