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 :

export de tables d'une base à une autre eb vba


Sujet :

Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 243
    Points : 86
    Points
    86
    Par défaut export de tables d'une base à une autre eb vba
    bonjour à tous
    jai un pti soucis: je bosse sur une base de maintenance( sauvegarde , compactage , export de tables en excel et mise à a jour de tables de plusieurs bases..)

    mon pb se situe lors de l'eport de tables de ma base vers une autre base
    en fait jai plusieurs bases qui utilisent la meme table. comme cette tble doit etre mise à jour périodiquement.
    l'idée est que je la met à jour sur ma base de maintenance et que je la lie aux autres.
    ainsi mon code vba va ouvrir la base, supprimer la table en question et la remplacer en exportant la nouvelle

    mon seul soucis se situe lors de l'export
    voila mon code :




    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    Public Function export(nomtable As String, nombase As String, chemin As String) As Boolean
    If Right(chemin, 1) <> "\" Then       ''''retraitement des chemins source et destination
                chemin = chemin & "\"
            End If
    If Right(nombase, 4) <> ".mdb" Then
                nombase = nombase & ".mdb"
    End If
    Dim tableObjet As TableDef
       Dim app As Application
       
       Dim name1, stable As String
       name1 = chemin & nombase
    'principalName =
       Set app = CreateObject("Access.application")
       app.OpenCurrentDatabase (name1)
               For Each tableObjet In app.CurrentDb.TableDefs
                   stable = tableObjet.name
                   On Error Resume Next
                      If stable = nomtable Then
                          app.DoCmd.DeleteObject acTable, nomtable
                          
             '   app.DoCmd.TransferDatabase acImport, "Microsft Access", stablechemin + nombase, acTable, name1, name1   ici est le Pb!!!
                    
                      End If
               Next tableObjet
    
      On Error GoTo 0
      CurrentDb.close
      Set app = Nothing
    End Function
    merci de votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    Pourquoi ne lis-tu pas plutôt ta table de destination à ta table de départ, cela t'évite toutes ces manipulations et tu as une mise à jour en temps réel

    Starec

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 243
    Points : 86
    Points
    86
    Par défaut
    et comment ca marche?
    je ne sais pas comment my prendre pour ca
    et si ma table dans ma base de maintenance va concerner 10 autres bases?
    c'est possible ca?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re

    Tu vas dans ta base de destination, dans l'onglet Table, clique droit bouton, lier la table, choisi ta base d'origine et ta table.

    Si dans les bases annexes tu ne fais que de la consultation, cela ne devrait pas poser de soucis

    Starec

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 243
    Points : 86
    Points
    86
    Par défaut
    et ca ne poserai pas de pb si toutes mes bases sont utilisées en réseau par plusieurs personnes

    que certaines d'entre elles, à l'ouverture , excecutent des macros assez consequentes?
    Merci ded ton aide.

Discussions similaires

  1. Update d'une table avec d'une base à une autre
    Par bb44115 dans le forum SQL
    Réponses: 1
    Dernier message: 28/05/2008, 16h52
  2. Importer données d'une table d'une base à une autre
    Par kat40 dans le forum VBA Access
    Réponses: 4
    Dernier message: 01/02/2008, 14h57
  3. copie de table d'une base à une autre
    Par Luc_Dal dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/10/2007, 00h51
  4. copier une table d'une base à l'autre
    Par niavlys77 dans le forum Access
    Réponses: 4
    Dernier message: 26/09/2007, 15h57
  5. Réponses: 5
    Dernier message: 24/03/2007, 15h00

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