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 :

Requete Insert vba qui s'execute mais ne fonctionne pas


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 2007
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 57
    Par défaut Requete Insert vba qui s'execute mais ne fonctionne pas
    Bonjour,
    Je ne comprends pas d'où vient le problème :
    J'écris une requête insert en vba
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                CurrentDb.Execute ("INSERT INTO TabProduitCompose ( nProduit, Nom, nUnite, Quantite, Cfixe ) SELECT localProduitCompose.nProduit, localProduitCompose.Nom, localProduitCompose.nUnite, localProduitCompose.Quantite, localProduitCompose.CFixe FROM localProduitCompose WHERE localProduitCompose.nProduitCompose Is Null;")
    Je vérifie que le code exécute bien la ligne.
    Je vérifie qu'il n'y a pas de problème d'index, de clé primaire, de champs null ou vide interdit.
    Je vérifie qu'il y a bien des enregistrements concernés.
    Rien à faire, la requête est sans effet alors que si je prends la même phrase sql et que je la colle dans une requete Access, elle fonctionne.

    J'ai même essayé via un recordset
    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
    17
    18
    19
                Set r = CurrentDb.OpenRecordset("SELECT localProduitCompose.nProduit, localProduitCompose.Nom, localProduitCompose.nUnite, localProduitCompose.Quantite, localProduitCompose.CFixe FROM localProduitCompose WHERE localProduitCompose.nProduitCompose Is Null;")
                If Not r.EOF Then
                    Set r2 = CurrentDb.OpenRecordset("Select * from tabproduitcompose")
     
                    While Not r.EOF
                        r2.Edit
                        r2.AddNew
                        r2.Fields("Nom") = r.Fields("Nom")
                        r2.Fields("Quantite") = r.Fields("Quantite")
                        r2.Fields("nUnite") = r.Fields("nUnite")
                        r2.Fields("Cfixe") = r.Fields("Cfixe")
                        r2.Fields("nProduit") = r.Fields("nProduit")
                        r2.Update
                        r.MoveNext
                    Wend
                    r2.Close
                End If
                Set r2 = Nothing
                Set r = Nothing
    Mais c'est pareil. Le code rentre bien dans la boucle, il n'y a pas de message d'erreur, mais à la fin, aucun insert....

    Quelqu'un comprend il quelque chose ????

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 57
    Par défaut suite
    Pour compléter, j'enregistre la requête "Ajout Composés Produit" et je l’exécute par le code, avec une commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                DoCmd.OpenQuery "Ajout Composés Produit"
    J'ai bien deux avertissements d'Access:
    "Vous allez exécuter une requête Ajout qui modifiera votre table, voulez-vous continuer", puis "Vous allez ajouter une ligne, voulez-vous continuer ?"
    Aucun message de violation de clé ou truc du genre.

    Mais non, pas d'enregistrement.

    J’exécute cette requête hors du code, elle marche.

    C'est à devenir fou !!!

Discussions similaires

  1. [XL-2007] Code VBA qui fonctionne sous XL 2007 mais ne fonctionne pas sous ACCESS 2003.
    Par casdidier dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 12/09/2014, 00h43
  2. [AC-2007] Requete INSERT INTO qui écrase mes enregistrements
    Par Azomix dans le forum VBA Access
    Réponses: 4
    Dernier message: 30/01/2012, 19h15
  3. Réponses: 2
    Dernier message: 17/03/2011, 14h52
  4. Réponses: 4
    Dernier message: 12/09/2010, 15h13
  5. PC qui s'allume mais ne démarre pas
    Par Purple Haze dans le forum Ordinateurs
    Réponses: 3
    Dernier message: 02/06/2007, 00h56

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