Se connecter avec
S'enregistrer | Connectez-vous

problème requête SQL VBA [resolu]

Dernière réponse : dans Programmation

Salut à tous, j'ai un petit concernant l'exécution de ma requête SQL qui interroge ma base ACCESS

Parmis les modèles de véhicule que je recherche j'ai la KIA CEE'D mais comme vous pouvez le constater dans CEE'D il y a un ' donc dans ma requête.... il n'arrive pas à trouver ce modèle

l'erreur qu'il m'indique est : Erreur de syntaxe (opérateur absent) dans l'expression '(((MARQUE.Marque)='KIA') AND ((MODELE.Modele)='CEED'D') AND ((GENRE.Genre)='VP'));'

le ' pose problème. Alors comment éviter qu'il ne prenne ce ' comme une balise.

Voici le code

  1. For J = 35000 To 36000
  2. 'On Error Resume Next
  3. 'Requête SQL2
  4. val = Sheets("IMMATs Modèle VP").Range("C" & J).Text
  5. val2 = Sheets("IMMATs Modèle VP").Range("D" & J).Text
  6. val3 = Sheets("IMMATs Modèle VP").Range("E" & J).Text
  7. strSql = "SELECT DISTINCT Modele.Id_Modele FROM Genre INNER JOIN (MARQUE INNER JOIN Modele ON MARQUE.Id_Marque = Modele.Id_Marque) ON Genre.Id_Genre = Modele.Id_Genre WHERE (((MARQUE.Marque)=" & "'" & val & "'" & ") AND ((Modele.Modele)=" & "'" & val2 & "'" & ") AND ((Genre.Genre)=" & "'" & val3 & "'" & "));"
  8.  
  9. 'Ouverture du jeu d'enregistrements.
  10. Set rst = New ADODB.Recordset
  11.  
  12. 'Paramètres de Résultat de la Requête
  13. With rst
  14. .Open Source:=strSql, _
  15. ActiveConnection:=cn, _
  16. CursorType:=adOpenForwardOnly, _
  17. LockType:=adLockReadOnly
  18. End With


Merci d'avance pout votre aide

Autres pages sur : probleme requete sql vba resolu

Lassé par la pub ? Créez un compte

pour despecialiser le caractere.

J'ai beaucoup d'expérience en C* (c/c++ ...) et le caractere de despecialisation est le "\" ...

en VBA, je suis 1 peu plus limité. Requete, organisation de tableaux, de stats ... il semble donc qu'il faille mettre 2 ' pour les requetes SQL... comme ça, je le saurai!
Lassé par la pub ? Créez un compte
Tom's guide dans le monde