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

Macros et VBA Excel Discussion :

VBA Import et export table Access dans Excel [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Rémy.A
    Homme Profil pro
    Expert SEE ELECTRICAL EXPERT
    Inscrit en
    Juin 2017
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert SEE ELECTRICAL EXPERT
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2017
    Messages : 118
    Par défaut VBA Import et export table Access dans Excel
    Bonjour à tous,

    Je suis un peux plus que débutant (mais pas trop )en VBA Excel...

    Au travail j'utilise un logiciel de schémas électriques ( On a 3 versions différentes) qui à un environnement. Cet environnement à un catalogue matériel qui est géré avec un fichier "Equipement.mdb". J'ai plus de 800 références matériel à créer sur chaque versions de logiciel, sois je passe par le logiciel (ce qui prendra des mois...), sois je modifie le fichier mdb. J'ai choisi de modifier le mdb.

    Le problème est que je ne connais rien en Access et en SQL...
    J'ai donc choisis de faire une macro VBA sous Excel pour importer les tables (de chaque fichier mdb(x3)) dans excel, de les trier sur excel et de les injecter dans les 3 fichiers Access . C'est pour fusionner mes tables en gérant les doublons.

    Quand j'utilise l’enregistreur de macro pour importer une table, le résulta me convient. Mais le code m'est incompréhensible pour que je puisse le travailler et faire mes boucle dans ma macro....

    Après avoir fouillé sur le net, j'ai commencé à faire du code pour importer un table sur Excel, mais je voudrais avoir les entêtes des colonnes ds Excel.

    Est-ce que mon code est bien? On peux faire plus simple?

    C'est possible d'avoir une solution pour supprimer (vider) une table Access et de la recréer (remplir) avec Excel? Là je bute

    J'utilise la méthode AOD (je n'arrive pas à le faire avec la méthode DAO)

    Ci joint mon fichier Excel et Access



    MERCI par avance pour votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Membre Expert Avatar de curt
    Homme Profil pro
    Ingénieur Etudes
    Inscrit en
    Mars 2006
    Messages
    1 579
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 579
    Par défaut
    Bonjour Rémy.A,

    pourquoi ne pas lier les tables Access dans Excel ? Y effectuer les traitements souhaités et ensuite de retourner le tout dans une base Access "MiseAJour" ?
    Tu éviterais du code (que tu ne maîtrises peut être pas efficacement) et une maintenance fastidieuse.

    Tu pourrais aussi tout faire dans Access via une requête (l'éditeur SQL est là pour ça) pas si compliqué à faire pour le traitement de doublons, fusion, etc.

    Curt

  3. #3
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 564
    Par défaut
    Bonjour

    Si j'ai bien compris tu veux fusionner sans doublons l'ensemble des 3 tables access ?

    J’imagine que chaque table a une clé primaire

    Crée une base Access vierge
    Fais une liaison des 3 tables (une de chacun des 3 mdb)

    Copie la structure d'une des table liées (sans les données) sous le nom de Ensemble par exemple puis tu crées un requête union ainsi (en affichant le requêteur en mode sql)

    Select * from Table1 union Select * from Table2 union Select * from Table3;
    Tu enregistres ta requête sous le nom tout par exemple

    Puis tu crées une requête ajout qui ajoute tout dans Ensemble.

    Et c'est fini (cela prends moins de temps que de l'écrire ici )

    A chaque fois que tu dois faire cela, il suffit de vider la table Ensemble et de relancer la requête ajout...

  4. #4
    Membre confirmé Avatar de Rémy.A
    Homme Profil pro
    Expert SEE ELECTRICAL EXPERT
    Inscrit en
    Juin 2017
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert SEE ELECTRICAL EXPERT
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2017
    Messages : 118
    Par défaut
    Pour le forum j'ai enlevé des tables, il y a plus de 40 tables par fichiers et au total il y a plus de 400000 références voir plus.

  5. #5
    Membre confirmé Avatar de Rémy.A
    Homme Profil pro
    Expert SEE ELECTRICAL EXPERT
    Inscrit en
    Juin 2017
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert SEE ELECTRICAL EXPERT
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2017
    Messages : 118
    Par défaut VBA Import et export table Access dans Excel
    J'aimerai avoir un fichier Excel qui fusionne les trois fichiers mdb en cliquant sur un bouton afin que les collègues de travail qui l'utiliseront ne puissent pas corrompre les fichiers mdb.
    De plus dans les fichiers mdb certaines tables sont différentes suivant les versions du logiciel et doivent le rester. Si un utilisateur se trompe de table en fusionnant, certaines fonctionnalités du logiciel ne fonctionneront plus...
    Et à la base nous sommes électriciens et c'est tous juste s'il savent utiliser Excel et la plupart (dont moi même) nous ne connaissons pas Access.

  6. #6
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 564
    Par défaut
    RE

    Ce que j'ai expliqué est à faire UNE fois.

    Ensuite il suffit de chaîner la requête de vidage de Ensemble et la requête Ajout dans une macro Access : un bouton associé à la macro, c'est tout.

    Reste à voir ce que l'on fait de la synthèse obtenue qui dans ce que j'ai décrit n'est PAS dans une des bases du logiciel (relis attentivement...).

    Le nombre de référence n'a pas d'importante si justement on bosse dans Access et pas Excel où on dépasserait peut-être la limite gérable...
    C'est un non sens de vouloir faire cela dans Excel à part pour déclencher le processus si tu ne veux pas que l'on voit se qui se passe dans Access...

    Même s'il y a 40 tables dans les bases, les références sont dans une table, oui ou non ?

    Si non, trop simplifier le problème pour demander de l'aide et donc s'éloigner de la réalité n'est pas la meilleure approche.

    Donc donne toutes les billes utiles pour une solution qui répond à la problématique pas de bouts d'infos ...

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

Discussions similaires

  1. Importation d'une table access dans excel avec Macro
    Par wamkey dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 28/01/2014, 22h44
  2. Réponses: 1
    Dernier message: 17/11/2013, 00h20
  3. Réponses: 7
    Dernier message: 20/08/2012, 08h11
  4. Problème exportation table Access dans Excel
    Par Thiazung dans le forum Access
    Réponses: 5
    Dernier message: 02/10/2006, 17h12
  5. [VBA Excel] Importer des tables Access dans Excel
    Par loacast dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 06/12/2005, 11h44

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