Hey hey,
ich finde einfach nicht den Grund, warum ein Leerzeichen ensteht. Hier mal der Code:
strBG_Nr = Nz(rs!BG_Nr)
strNewFilePath = "\\sambahome\Tech\Projects\" & strProjectNr & "\" & strDocName & "-" & strBG_Nr & "-Rev" & iRevisionsNr & ".doc"
Trim (strNewFilePath)
Name strFilePath As strNewFilePath
Später wirds in die DB geschrieben:
strSQLinsert = "INSERT INTO DocumentRevisions(DocID, Revision, DocPath, CreatedTime, ModifiedBy, FileSize, ModifyReason) " & _
"VALUES (" & iDocID & "," & iRevisionsNr & ",'" & strNewFilePath & "',#" & Format(Date, "dd\-mm\-yyyy\") & "#," & _
"0," & iFileSizeInMegaByte & ",'" & strInputBox & "')"
DoCmd.SetWarnings False
DoCmd.RunSQL (strSQLinsert)
An der Stelle "-" & strBG_Nr habe ich immer zwischen Bindestrich und strBG_Nr immer ein Leerzeichen.
Trim hilft nicht. Und das Feld in der Datenbank BG_Nr welches strBG_Nr setzt, lässt nicht einmal Leerzeichen zu.
Hat da jemand eine Idee?
Hallo,
schreib mal:
strBG_Nr = trim(Nz(rs!BG_Nr,""))
Es kann schon vorkommen, dann im Tabellenfeld ein führendes Leerzeichen vorhanden ist. "Leere Zeichenfolge" sagt nur aus, dass kein String aus nur Leerzeichen eingeben werden kann.
Vermutlich wird BG_Nr vorher schon mittels einer(m) (fehlerhaften) SQL(-String) gefüllt.
Außerdem ist das kein gültiger Datumsstring:
...Format(Date, "dd\-mm\-yyyy\") ...
Super, danke das hilft. Ich hatte vorher schon geguckt, aber du hattest Recht. Jetzt hab ich den Fehler auch beim schreiben in die Datenbank gefunden. War ja klar.. ::)
Das mit dem Datum funktioniert (noch?) aber so..
Hallo,
Welchen Datentyp hat "CreatedTime" in der Tabelle?
Ich wäre jetzt überrascht, wenn #31-12-2011# von Access (wegen Verwendung von RunSQL) das in ein richtiges Format (bzw. Datumswert) umsetzen würde.
Und setz mal Warnings auf true
Ich verwende Datum/Uhrzeit. Das meinst du, oder? Unter Format ist nichts eingetragen.
setWarnings habe ich extra auf false gestellt, damit er nicht jedesmal meldet, wenn eine neue Zeile hinzugefügt wird. Das interessiert den Anwender nicht wirklich und nervt nur mit "beep".
Hallo,
ja, ich meine den Datentyp und nicht das Format.
Dann erstaunt es mich, dass das Datumsformat so funktioniert. Um welche Access-Version handelt es sich und sind die Tabellen Access(Jet)-Tabellen oder sind es verknüpfte Tabellen aus z. B. MySQL oder MS SQL Server?
Warnings auf true soll ja nur zur Fehlermeldungs-Analyse gesetzt werden.
Abend,
oh hab's nicht offensichtlich geschrieben. Der Fehler hat sich ja erledigt, ich hatte es falsch in die DB geschrieben. Und deine Lösung geht auch. Danke.
Ich nutze Access 2007 mit den normalen Access Tabellen. (Via Tabellenentwurf erstellt) Und keine externe DB-Quelle. Also alles Access-integriert.