jhaustein

Probleme mit vba code

Hallo,

habe ein Problem mit einem SQL Dump

ida = "Abtretung"  
    sql = "UPDATE tbl_dokument SET versendet = " & datum & " WHERE idp =" & idpg & " and dokutyp = " & ida  
    
     DoCmd.RunSQL sql
    

wenn man den Dump ausführt, dann geht ein Fenster auf Parameterwert eingeben
Abtretung
dann hier das textfenster

das möchte ich ja nicht - will ja nur die beiden where clauseln verglichen haben
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 1504174055

Url: https://administrator.de/forum/probleme-mit-vba-code-1504174055.html

Ausgedruckt am: 15.07.2025 um 19:07 Uhr

13034433319
13034433319 16.05.2024 aktualisiert um 15:51:54 Uhr
Moin.
Da wir die Feldtypen hier nicht kennen und das hier nur so ohne weitere Info zur Tabelle reingekippt wurde mach ich jett mal das gleiche ...
ida = "Abtretung"    
sql1 = "UPDATE tbl_dokument SET versendet = " & datum & " WHERE idp = " & idpg & " AND dokutyp = """ & ida  & """;"  
DoCmd.RunSQL sql1
em-pie
em-pie 16.05.2024 um 15:53:48 Uhr
Moin,

@13034433319
Fast…
ida = "Abtretung"      
sql1 = "UPDATE tbl_dokument SET versendet = '" & datum & "' WHERE idp = '" & idpg & "' AND dokutyp = '" & ida  & "';"    
DoCmd.RunSQL sql1
Es muss ein Hochkomata und kein Anführungszeichen sein.

@jhaustein
Was macht ein wscript.echo sql1?
Hier sollte ja dein Query ersichtlich werden…
13034433319
13034433319 16.05.2024 aktualisiert um 15:57:26 Uhr
Zitat von @em-pie:
Es muss ein Hochkomata und kein Anführungszeichen sein.
Bei anderen SQL-Systemen gebe ich dir recht, bei Access gehen aber sowohl Anführungszeichen als auch Hochkomma für Strings in den SQL Queries!
jhaustein
jhaustein 16.05.2024 aktualisiert um 16:16:42 Uhr
bekomme Datentypenkonflikt in Kriterienausdruck

das ist die Ausgabe
"UPDATE tbl_dokument SET versendet = '#2024-05-16#' WHERE idp = '1267' AND dokutyp = 'Abtretung';"
13034433319
Lösung 13034433319 16.05.2024 aktualisiert um 16:20:32 Uhr
Dann lass die Anführungszeichen/Hochkommas um das Datum weg. S. Änderung oben.
Den Datentyp von der Spalte idp kennen wir nicht, den kennst nur du, wenn das eine Zahl ist dort auch die Hochkommas/Anführungszeichen entfernen...

ida = "Abtretung"      
sql1 = "UPDATE tbl_dokument SET versendet = " & datum & " WHERE idp = " & idpg & " AND dokutyp = """ & ida  & """;"    
DoCmd.RunSQL sql1
jhaustein
jhaustein 16.05.2024 um 16:20:14 Uhr
super - lieben dank - daran lags