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 :

Exporter une table dans une nouvelle base de données


Sujet :

Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 70
    Par défaut Exporter une table dans une nouvelle base de données
    Bonjour a tous,

    J'ai une question:
    Est-il possible d'exporter une table (en format .mdb) depuis access.
    Et je voudrais que la table ne contienne que les champs que je desire

    Exemple la table maitresse(20 champs)
    la table exportée (5 champs)

    ainsi je veux garder les information de contact seulement...

    (aussi je voudrais que le tout soit fait a partir dun bouton ds un formulaire, donc en vb)


    La table exporté sera fusionnée ds word

    merci

  2. #2
    Membre Expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Par défaut
    Bonjour,
    Eventuellement, tu peux faire une requête Sélection et ne choisir que les champs qui t'interresse
    Ensuite tu n'as plus qu'a exporter le résultat de cette requête.
    Bonne continuation.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 70
    Par défaut
    ouep' bonne idéé pour le select,
    mais comment faire en vb a partir d'un bouton, exporter la table ds un autre fichier mdb independant au projet, et l'enregister sur le disque dur ?

    Merci a tous pour votre aide !

  4. #4
    Membre Expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Par défaut
    Re,
    Interresse toi à "DoCmd.TransferDatabase " ..........et fais quelque recherche sur les anciens messages
    Bonne continuation.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 70
    Par défaut
    merci encore,
    j'ai fait une recherche sur les anciens message mais il semble que ce soit tjrs pour exporter vers excel ou xml etc..

    DoCmd.TransferDatabase a besoin d'une base de donée de destination

    Donc je doit trouver le moyen pour creer une base de donnée sur le disque dur avant de povoir faire un transfert...

    Quelqu'un a une suggestion ?

    Merci

  6. #6
    Expert éminent

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Par défaut
    Interresse toi à DBEngine.CreateDatabase

  7. #7
    Membre Expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Par défaut
    Re,
    Voici un petit exemple pour ce que tu veux faire (le code est commenté pour explication) Ce code est associé à l'événement 'Sur clic' d'un bouton de commande et a pour objectif de créer une nouvelle base et de copier des tables de la base actuelle vers la nouvelle....ensuite à toi d'adapter cela à ton application.
    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
    20
    21
    22
    Private Sub Cmd15_Click()
    Dim NomBase As String
    NomBase = "NomNouvelleBase" & ".mdb"
    DoCmd.Hourglass True
    'Création nouvelle base
    Dim dbsNew As Database
    Set dbsNew = CreateDatabase(CurrentDBDir & NomBase, dbLangGeneral, dbVersion30)
    Set dbsNew = Nothing
    
    'Recopie des tables dans celle-çi
    Dim appAccess As Access.Application
    Dim Destination As String
    Set appAccess = CreateObject("Access.Application.8")
    appAccess.OpenCurrentDatabase CurrentDBDir & "NomBaseActuelle.mdb"
    Destination = CurrentDBDir &  NomBase
    appAccess.DoCmd.CopyObject Destination, "NomTableNouvelleBase", acTable, "NomTableACopier"
    appAccess.Quit
    
    DoCmd.Hourglass False
    MsgBox "*** TRAITEMENT REUSSI ***" , vbInformation, "Copie table(s) terminée(s)"
    End Sub
    Ceci n'est qu'un exemple, car il y a d'autre façon de faire....
    Bonne continuation.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 70
    Par défaut
    Merci, j'avais trouvé la commande DoCmd.CreateTable et j'ai réussi a batir ma bd mais il semble que un partie du code pour le transfert de la table cause une erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set appAccess = CreateObject("Access.Application.8")
    je crois avoir trouvé
    Access.Application.8 = access 97
    Access.Application.9 = access 2000



    Merci encore mille fois !

  9. #9
    Membre Expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Par défaut
    je crois avoir trouvé
    Access.Application.8 = access 97
    Access.Application.9 = access 2000
    L'exemple donné était sous Access97, donc comme je l'ai dis, il faut adapter à ta base........pour Access 2003, c'est:

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 70
    Par défaut
    ok maintenant le programme ne crash plus mais je ne voit pas la table ds la nouvelle bd ?

    pourtant le msgbox affiche traitement reussi ?
    et le poids de nouvelle bd est différent d'une nouvelle bd (sans copy object)

    une idee?

    merci mille fois


  11. #11
    Membre Expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Par défaut
    Oups....
    Et oui, c'est ça de passer de AC97 à AC2003...
    A corriger ==> CurrentDBDir est une fonction créer dans AC97 pour récupérer le chemin de la base en cours.
    Donc a remplacer par CurrentProject.Path
    Aprés cela devrait fonctionner

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

Discussions similaires

  1. copier une table d'une BDD dans une table d'une autre BDD
    Par faniette dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/05/2013, 10h17
  2. [AC-2003] insert des données d'une table dans une table d'une base externe
    Par marieo dans le forum VBA Access
    Réponses: 1
    Dernier message: 30/11/2009, 14h29
  3. Réponses: 2
    Dernier message: 12/12/2007, 11h52
  4. Réponses: 7
    Dernier message: 21/08/2006, 16h27
  5. Réponses: 2
    Dernier message: 02/06/2006, 11h26

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