Ik wil in VBA de volgende code uitvoeren:
-----------------
StringSQL = "SELECT [export adrbest basis PROJ_BES betaald].[Relatie id], Clng([export adrbest basis PROJ_BES betaald].[bestelregel id]) as bestelregelID INTO [exporttabel adressen] FROM [export adrbest basis PROJ_BES betaald] WHERE [export adrbest basis PROJ_BES betaald].[Project id]=31 ORDER BY [export adrbest basis PROJ_BES betaald].[Relatie id] ASC"
Currentdb.Execute StringSQL
-----------------
m.a.w. rechtstreeks gegevens in een nieuwe tabel invoeren.
Ik krijg echter telkens een fout:
"Er zijn te weinig parameters, het verwachte aantal is 1"
Bij het opbouwen van de SQL-string in VBA wordt de parameter als volgt ingevuld:
".... WHERE [export adrbest basis PROJ_BES betaald].[Project id]=" & forms![projecten]![kies project]
(dat is ook de reden dat ik niet gewoon een query bouw en die gebruik: VBA kiest de juiste velden obv keuzes en sorteermogelijkhedne om die SQL op te bouwen, dat terzijde)
Het is mij bekend dat als je niet buiten de string de parameter erbij haalt (zoals ik hier dus wel doe) dat je dan die parameter foutmelding krijgt. Maar dat doe ik dus goed.
Het vreemde is echter dat als ik die string zoals ie hierboven staat in een query ingeef, dat dit zonder problemen werkt (dan dus NIET met een parameter, want "31" zit dan in de string verwerkt!), maar dat Currentdb.Execute deze string niet kan verwerken, want ik krijg die foutmelding. En dat terwijl er in de bovenstaande string dus helemaal geen parameter zit
Iemand een clue? Het vreemde is dat dit tot 1 maand geleden altijd gewerkt heeft, en er zijn wel veel updates geweest, maar niet aan dit scherm of aanverwante zaken.
-----------------
StringSQL = "SELECT [export adrbest basis PROJ_BES betaald].[Relatie id], Clng([export adrbest basis PROJ_BES betaald].[bestelregel id]) as bestelregelID INTO [exporttabel adressen] FROM [export adrbest basis PROJ_BES betaald] WHERE [export adrbest basis PROJ_BES betaald].[Project id]=31 ORDER BY [export adrbest basis PROJ_BES betaald].[Relatie id] ASC"
Currentdb.Execute StringSQL
-----------------
m.a.w. rechtstreeks gegevens in een nieuwe tabel invoeren.
Ik krijg echter telkens een fout:
"Er zijn te weinig parameters, het verwachte aantal is 1"
Bij het opbouwen van de SQL-string in VBA wordt de parameter als volgt ingevuld:
".... WHERE [export adrbest basis PROJ_BES betaald].[Project id]=" & forms![projecten]![kies project]
(dat is ook de reden dat ik niet gewoon een query bouw en die gebruik: VBA kiest de juiste velden obv keuzes en sorteermogelijkhedne om die SQL op te bouwen, dat terzijde)
Het is mij bekend dat als je niet buiten de string de parameter erbij haalt (zoals ik hier dus wel doe) dat je dan die parameter foutmelding krijgt. Maar dat doe ik dus goed.
Het vreemde is echter dat als ik die string zoals ie hierboven staat in een query ingeef, dat dit zonder problemen werkt (dan dus NIET met een parameter, want "31" zit dan in de string verwerkt!), maar dat Currentdb.Execute deze string niet kan verwerken, want ik krijg die foutmelding. En dat terwijl er in de bovenstaande string dus helemaal geen parameter zit
Iemand een clue? Het vreemde is dat dit tot 1 maand geleden altijd gewerkt heeft, en er zijn wel veel updates geweest, maar niet aan dit scherm of aanverwante zaken.
[ Voor 8% gewijzigd door Stefke op 31-10-2003 15:26 ]