Opgelost SQL met fout

Dit topic is als opgelost gemarkeerd

JEPEDEWE

Terugkerende gebruiker
Lid geworden
14 jun 2006
Berichten
1.682
hallo,
Ik krijg in volgend SQL de foutmelding: "Kan veld |1 niet vinden waarnaar wordt verwezen in de expressie"

SELECT Fiche.NAAM, Fiche.LAATSTE, VOORSCHR.REKDAT, [Fiche].[laatste]+ " & [me.teruggaan] & " AS Expr1 FROM Fiche INNER JOIN VOORSCHR ON Fiche.KODE = VOORSCHR.KODE WHERE (((Right([KODELANG],1))=1) And ((Fiche.laatste +" & [me.teruggaan] & ")<Date())) ORDER BY Fiche.LAATSTE;"

Me.teruggaan levert een cijfer op... misschien ligt het hier aan? enfin, ik kom er niet uit

Dank alvast
 
Leg eens uit wat je aan het doen bent, want deze syntax is sowieso fout als het vanuit een query komt. En ik twijfel nog over de opzet als het een VBA string is.
 
Laten we even uitgaan van het laatste geval, en dat je dus in VBA een Select String maakt. Dan zou die er zo uit moeten zien:
Code:
strSQL = "SELECT Fiche.NAAM, Fiche.LAATSTE, VOORSCHR.REKDAT, [Fiche].[laatste] + " & Me.teruggaan & " AS Expr1 " _
    & "FROM Fiche " _
    & "INNER JOIN VOORSCHR ON Fiche.KODE = VOORSCHR.KODE " _
    & "WHERE (Right([KODELANG],1)=1 And Fiche.laatste + " & Me.teruggaan & " <Date) " _
    & "ORDER BY Fiche.LAATSTE;"
 
als ik schrijf:
strSQL = "SELECT Fiche.NAAM, Fiche.LAATSTE, VOORSCHR.REKDAT, [Fiche].[laatste] + " & Me.Teruggaan & " AS Expr1 " _
& "FROM Fiche " _
& "INNER JOIN VOORSCHR ON Fiche.KODE = VOORSCHR.KODE " _
& "WHERE (Right([KODELANG],1)=1 And Fiche.laatste + " & Me.Teruggaan & " < Date) " _
& "ORDER BY Fiche.LAATSTE;"
krijg ik de vraag de waarde van Date in te geven
verander ik date) in Date() dan krijg ik een Syntaxisfout (operator ontbreekt) in quer-expressie
(Right([KODELANG],1)=1 And Fiche.laatste + 25 < Date() ORDER BY Fiche.LAATSTE;.

???
 
Wat laat msgbox strSQL zien?
Tel de haakjes eens...
 
heb de lijn: & "WHERE (Right([KODELANG],1)=1 And Fiche.laatste + " & Me.Teruggaan & " < Date) " _
aangepast naar
& "WHERE (Right([KODELANG],1)=1 And Fiche.laatste + " & Me.Teruggaan & " < Date()) " _
en probleem was opgelost
dank!!
 
Normaal gesproken gebruik je in VBA Date als opdracht, niet Date(). Dat laatste gebruik je weer in queries. Omdat ik e.e.a. niet kon testen in je database, heb ik alles naar de VBA variant ‘vertaald’. Dit:
Code:
WHERE (Right([KODELANG],1)=1 And Fiche.laatste + " & Me.Teruggaan & " < " & Date
Zou dus wél moeten werken, en is dus óók goed :)😊.
 
Terug
Bovenaan Onderaan