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

Access Discussion :

Copier les données dans base externe


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 31
    Points : 29
    Points
    29
    Par défaut Copier les données dans base externe
    Bonjour,
    je cherche à copier les données d'une table dans une base externe pour les coller dans une table de la base courante.
    Je voulais donc faire ça (code simplifié):
    'Ouvrir la base distante et copier les infos de la table "Produits"
    DBEngine.OpenDatabase(BaseExterne)
    DoCmd.OpenTable "Produits"
    DoCmd.RunCommand acCmdSelectAllRecords
    DoCmd.RunCommand acCmdCopy

    'Coller dans les infos dans la table "Produits " de la base en cours
    DBEngine.OpenDatabase(CurrentDb.Name)
    DoCmd.OpenTable "Produits"
    DoCmd.RunCommand acCmdSelectAllRecords
    DoCmd.RunCommand acCmdPaste
    Le problème est que lorsque j'ouvre la base distante pour y copier les données, ca les copie dans la base courante
    Doc, c'est grave ?
    Merci d'avance

  2. #2
    Membre expérimenté
    Avatar de Papy Turbo
    Homme Profil pro
    Développeur Office/VBA
    Inscrit en
    Mars 2004
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Office/VBA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 822
    Points : 1 709
    Points
    1 709
    Par défaut
    Salut, bozolozo,

    Ach ! grosse confusion.

    Suis ennuyé : je constate que je n'ai jamais utilisé la commande "Docmd.Opendatabase", mais je pense que, si tu veux faire un copier/coller d'une table dans l'autre, il faut
    - que la table externe soit attachée dans la base courante,
    - lorsque tu fais ça, Access va nommer la table attachée "Produits1", pour qu'elle ait un nom différent
    - alors, tu pourras (sans aucun "Opendatabase") copier de la table Produits1 (attachée) vers la table Produits (locale).

    Sinon, il y a plein de méthodes plus "solides" (plus sûres et probablement plus rapides) que le copier/coller.
    La plus simple serait, entre la table attachée et la table locale, une requête "ajout" qui copie tous les champs d'une table dans l'autre.

    D'autres solutions, en ouvrant des recordsets sous vba, seraient plus lentes (copie ligne par ligne, champ par champ...).
    Développement Office, support technique, assistance, sur place (Loire atlantique, Vendée, Maine et Loire) ou à distance.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 31
    Points : 29
    Points
    29
    Par défaut
    Salut Papy et merci pour ta réponse

    il faut
    - que la table externe soit attachée dans la base courante
    Le problème avec Access est qu'il est alors impossible d'appliquer l'intégrité référentielle, ce qui pose problème dans mon cas...

    Par contre, je suis intéressé par la requête ajout... est-ce que tu peux m'en dire plus ?
    Merci d'avance

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

Discussions similaires

  1. Copier les données dans un fichier txt
    Par pomolo11 dans le forum PL/SQL
    Réponses: 2
    Dernier message: 25/01/2014, 12h38
  2. [XL-2010] Copier les données dans un autre classeur
    Par idhmida dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/12/2013, 15h17
  3. Réponses: 1
    Dernier message: 09/05/2012, 10h22
  4. [XL-2002] Copier les données dans le presse papier en fermant un classeur
    Par Djohn dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 29/04/2009, 14h02
  5. Réponses: 2
    Dernier message: 19/03/2007, 17h38

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