Erreur de Syntaxe SQL INSERT TO

Résolu
Bonjour,

Malgré plusieurs lectures de post sur le même sujet, je ne parvient pas à identifier l'erreur de mon SQL, quelqu'un peut-il m'aider svp?

DoCmd.RunSQL "INSERT INTO T-LIGNEFACTURE ([N° FACT AUTO],[N° PRODUIT],[QUANTITE]) VALUES (" & Form![NFACTAUTO] & " ," & Form![produit] & " ," & Form![QUANTITE] & ");"

T-LIGNEFACTURE - Table qui doit recevoir le nouvel enregistrement (clé primaire N° LIGNE, non renseignée)
Les valeurs à ajouter sont récupérées sur le formulaire ouvert et sont tous de type nombre standard.

2 réponses

  1. Contributeur Ambassadeur
    bonjour,
    moi je ferais ainsi:
    dim req as string
    req =  "INSERT INTO T-LIGNEFACTURE ([N° FACT AUTO],[N° PRODUIT],[QUANTITE]) VALUES (" _
    & Form![NFACTAUTO] & " ," & Form![produit] & " ," & Form![QUANTITE] & ")" 
    debug.print req
    DoCmd.RunSQL req

    cela te permet de récupérer le texte de la requête, et de la tester manuellement.
    0
    1. Bonjour,
      j'avais déjà testé mais cela ne me permet pas de trouver le problème ;-)
      voici le retour ;
      INSERT INTO T-LIGNEFACTURE ([N° FACT AUTO],[N° PRODUIT],[QUANTITE]) VALUES (74 ,67 ,8)

      J'ai vérifié mes champs ils, dans la table ils sont en numérique entier long décimales automatique et dans le formulaire en nombre standard...
      0
      1. Contributeur Ambassadeur
        as-tu testé la requête à la main? je pense que cela va rapidement te conduire vers une solution.
        0
      2. Je n'ai pas de problème avec la requête à la main...
        0
      3. Contributeur Ambassadeur
        @Sophiecomment fais-tu? utilises-tu le texte de la requête (
        INSERT INTO T-LIGNEFACTURE ([N° FACT AUTO],[N° PRODUIT],[QUANTITE]) VALUES (74 ,67 ,8)
        )?
        0
      4. dim req as string
        req = "INSERT INTO [T-LIGNEFACTURE] ([N° FACT AUTO],[N° PRODUIT],[QUANTITE]) VALUES (" _
        & Form![NFACTAUTO] & " ," & Form![produit] & " ," & Form![QUANTITE] & ")"
        DoCmd.RunSQL req
        0