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 :

Erreur requête : table vérouiller [AC-2007]


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 53
    Par défaut Erreur requête : table vérouiller
    Bonjour,

    Je voudrais exécuter une requête en VBA pour ajouter une colonne dans une table. Sauf que quand je lance ma requête l'erreur : "Le moteur de base de données n'a pas pu verrouiller la table <nom> car elle est déjà utilisée par une autre personne ou un autre processus. (Erreur 3211)" apparaît.

    La seul raison de cette erreur est le fait que mon formulaire qui lance la requête à comme source de contrôle la table en question. J'ai donc eu l'idée de mettre ce contrôle à "vide", d’exécuter la requête puis de remettre le contrôle sauf que je n'y arrive pas.
    J'ai vu sur la FAQ qu'il fallait utiliser ceci :
    Me.NomDeMonFormulaire.Form.RecordSource = "Select ..."
    Sauf que quand je met le nomduformulaire ça ne marche pas. Pouvez vous me donner la syntaxe pour cette commande sachant que mon formulaire se nomme : F_Ajout_Formation_Stagiaire.

    Mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
               ajcolsql = "ALTER TABLE T_Formation_Stagiaire ADD " &  rstid.Fields(0) & " varchar(15)" 
     
                Set Req = db.CreateQueryDef("", ajcolsql)
     
                'Me.F_Ajout_Formation_Stagiaire.Form.RecordSource = ""
     
                Req.Execute dbFailOnError
    Ou alors le problème ne vient pas de là, je ne sais pas.

    Merci d'avance pour vos réponses.

  2. #2
    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
    salut,
    attention à ne pas tout confondre
    la syntaxe SQL pour les ALTER TABLE d'une part
    http://access.developpez.com/sql/#L2.2.1
    exécution de requête action d'autre part
    http://access.developpez.com/faq/?page=SQL#qryActions
    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

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 53
    Par défaut
    Merci je vais regarder ça très attentivement.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 53
    Par défaut
    J'ai quelque peut modifier mon code mais j'ai toujours la même erreur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
              Dim db As DAO.Database: Set db = CurrentDb
              ajcolsql = "ALTER TABLE T_Formation_Stagiaire ADD COLUMN" & rstid.Fields(0) & " varchar(15)" 
              db.Execute ajcolsql

  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
    regarde déjà le contenu SQL de ta requête avant de l'exécuter

    tu y verras notamment une espace manquante entre COLUMN et le nom du champ
    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 averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 53
    Par défaut
    Oui c'est corrigé. Mais ça ne m’enlève pas l'erreur.

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

Discussions similaires

  1. erreur Requête MaJ table excel
    Par 4rn0_o dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 03/07/2008, 09h08
  2. Erreur SQL : Table/alias non unique
    Par albert69 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 09/11/2005, 17h31
  3. Réponses: 4
    Dernier message: 28/09/2005, 18h00
  4. [erreur requête]
    Par viny dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 16/09/2005, 13h55
  5. erreur : la table n'existe pas !!!
    Par djouahra.karim1 dans le forum Bases de données
    Réponses: 1
    Dernier message: 08/06/2005, 14h17

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