IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

probleme point virgule absent à la fin de l'instruction erreur 3137


Sujet :

VBA Access

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Par défaut probleme point virgule absent à la fin de l'instruction erreur 3137
    Bonjour à tous,

    voila, dans un formulaire j'ai crée un bouton qui lance quelques actions sur une base de donnée access.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    Private Sub bout_Curatif_Enter()
    Dim RS As DAO.Recordset
    Dim SQL As String
    Dim SQL2 As String
     
    Texte59 = Modifiable34
     SQL = "SELECT curatif FROM  temps where semaine ='" & Texte59 & "'"
     Set RS = CurrentDb.OpenRecordset(SQL)
     Texte61 = RS(0)
     
     
        SQL2 = "INSERT INTO  temps(curatif) VALUES (51) FROM  temps where semaine ='" & Texte59 & "'"
    DoCmd.RunSQL (SQL2)
     
    End Sub
    quand j'excecute le bouton , il me renvoit l'erreur point virgule absent à la fin de l'instruction erreur 3137 au niveau de DoCmd.RunSQL (SQL2)
    merci d'avance de votre aide

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    503
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 503
    Par défaut
    Salut,

    Euh ta requête Insert est mal rédigée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    INSERT INTO table (champs1, champs2)
    VALUES(val1, val2)
    WHERE condition

  3. #3
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Bonjour,
    bienvenue sur DVP
    le code que tu souhaites exécuter ne peut pas fonctionner, à cause de l'erreur qui se situe dans la requête SQL.

    Tu sembles faire une confusion entre le
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO ... VALUES ...
    et le
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO ... SELECT ...

    De nombreuses ressources sont disponible sur DVP, entre autres une
    http://access.developpez.com/faq
    et de nombreuses ressources (cours/tutoriaux/sources/etc.)

    Concernant la syntaxe SQl, je t'encourage à lire ce très bon article de SQLPro :
    http://sqlpro.developpez.com/cours/sqlaz/dml/#LII

    bonne lecture, et n'hésite pas à poser des questions si certaines notions t'échappent
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Par défaut
    tu veux dire enlever le FROM
    car si j enleve le "WHERE...."
    l'insert marche tres bien il rajoute 51 à la fin de la base et pas d'erreur 3137

    Merci jpcheck pour les liens , je vais regarder de pres, et tenter de voir où se trouve ma confusion

  5. #5
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    En l'occurence, s'il s'agit d'une mise à jour, il faut utiliser UPDATE et non pas INSERT


    Vérifie quelques éléments :
    - les types de champs que tu souhaites compléter/ajouter
    - le critère d'ajout/de mise à jour
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Par défaut
    merci 6til25 pour ta proposition mais VBA n'a pas l'air d aimer beaucoup plus.

    dans ma table , le champ curatif est completement vide. l'UPDATE est approprié ?
    dsl je suis pas tres bon en bdd; longtemps sans pratique

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 9
    Par défaut
    merci pour votre aide apres etude des divers liens, j'ai reussi à m'en sortir avec un UPDATE

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Point-virgule absent à la fin de l'instruction SQL
    Par colorid dans le forum Bases de données
    Réponses: 2
    Dernier message: 15/06/2011, 15h41
  2. Réponses: 9
    Dernier message: 28/05/2010, 14h37
  3. [ODBC] Point-virgule absent à la fin de l'instruction SQL
    Par loulitta dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 27/06/2008, 10h55
  4. [access 2003] erreur d'execution 3137, point virgule absent
    Par Milyshyn76 dans le forum VBA Access
    Réponses: 3
    Dernier message: 01/02/2008, 08h41
  5. Problème de point-virgule absent
    Par *.Har(d)t dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 04/05/2007, 13h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo