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 :

mise à jour automatique d'Access vers Excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 22
    Points : 15
    Points
    15
    Par défaut mise à jour automatique d'Access vers Excel
    Bonjour à vous tous,
    j'ai quelques tables dans Access que je veux transférer dans Excel pour ensuite automatiser une mise à jour entre celles-ci et le fichier Excel. Je suis assez débutant avec VBA, j'ai trouvé un code qui fonctionne relativement bien à part que la ligne contenant le nom des champs n'apparaît. Auriez-vous une solution?? Voici le 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
    Sub Requete()
     
    Dim bdd As Database, req As QueryDef, enr As Recordset
     
    Set bdd = Workspaces(0).OpenDatabase("S:\RIT 2006\bd1.mdb")
     
    sql = "SELECT * FROM IT_adhesion;"
     
    Set enr = bdd.OpenRecordset(sql)
     
    numberOfRows = Sheets("Feuil1").Cells(1, 1).CopyFromRecordset(enr)
     
    enr.Close
    bdd.Close
     
    End Sub

    Merci,

    JS

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    Bonjour,

    et avec la fonction intégrée d'Excel ?
    Données > Données externes > Créer une requête
    Ensuite tu n'as plus qu'à choisir la table et les colonnes à importer.

    Pour mettre à jour les données, il suffit de cliquer sur le "!" de la barre d'outil "Donées externes" qui apparait.

  3. #3
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Merci, mais j'aimerais bien que la mise à jour se fasse automatiquement dès que je fais des modifications dans ma BD Access.

    JS

  4. #4
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Alors, je ne vois que la solution de faire ton programme de mise à jour dans Access.

    Ceci dit, je ne comprends pas bien le besoin.
    Tu veux avoir les 2 (Access et Excel) ouverts en même temps???

    Essaye d'expliquer un peu mieux le résultat attendu.
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  5. #5
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Bonjour,
    en somme, ce que je veux est que lorsque je ferai une mise à jour dans Access quelle se replique automatiquement dans mon fichier Excel lors de sa premiere ouverture. Le fait est que je me sers d'Access pour la manipulation de données que je reçois ponctuellement ensuite je transfert mes tables résumés dans Excel pour en faire un rapport de vente. J'espère que j'ai été plus clair.
    merci d'avoir pris le temps de me répondre.

    JS

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    Donc je me répète :
    la fonction intégrée d'Excel :
    Données > Données externes > Créer une requête

    Ensuite à l'ouverture, tu n'as plus qu'à actualiser le QueryTable ainsi créé.

  7. #7
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    je comprends, mais je ne veux pas faire ainsi car le rapport est consulté par des néophytes qui connaissent que dalle d'Excel et des requetes DAO. C'est plutôt ça le problème .

    merci,

    JS

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    Non je ne dis pas que c'est l'utilisateur qui doit créer le QueryTable.
    Tout cela dépend, quelle en est l'utilité. Doit on afficher toutes les données brutes? Ou bien as-tu dans Excel un tableau formaté qui va chercher les données dans Access? Est-ce un tableau Excel en lecture seule, ou bien une sorte de formulaire de mise à jour?

    Si l'accès aux données dans Excel est en pure lecture seule, et les colonnes consultables figées, tu peux créer dans une feuille ce tableau.
    A l'ouverture, une macro met à jour ces données (en fait le QueryTable) et hop l'utilisateur voit les dernières données.
    Pour un tableau formaté, ou croisé, il faut que tu t'orientes vers un tableau croisé dynamique, qui de la même façon sera mis à jour automatiquement par une macro.

    Par contre si tu as une interaction entre Excel et Access dans les deux sens, c'est plus compliqué...

  9. #9
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    EN somme, j'exporte mes tables Access dans un fichier Excel. Le fichier Excel contient une feuille rapport - qui est formaté- qui puise l'information dans une feuille qui contient les données exportées. Les utilisateurs ne modifient pas les données, ils sont plutôt en mode lecture seule car le rapport est sur un serveur accessible à tous. Mon rôle est de mettre à jour les données dans Access pour ensuite les exporter dans le-dit fichier Excel. C'est sûr qu'il y a des améliorations possible et tu en as nommé plusieurs. C'est de là mon interrogation, car mon objectif ultime est d'automatiser le processus en entier. Selon toi, quelle serait la meilleure solution??

    Merci encore une fois.

    JS

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    Voila ce que tu peux faire :
    - Tu as un reporting à faire.
    - Les données sont toutes dans une bdd Access.
    - Tu fais ton rapport dans Excel : tableau croisé dynamique (tcd), QueryTables pour importer les données dans Excel dans des feuilles masquées, et formules Excel ou tcd, pour formater.
    - Les utilisateurs ne doivent pas ou ne peuvent pas modifier les données, ni le rapport. Si une modif doit être faite, groupe de travail avec tous les utilisateurs concernés pour y apporter des modifs.
    - La mise à jour du rapport est simple, ce sera une actualisation des tcd ou qt, si des données ont été modifiées dans la bdd

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

Discussions similaires

  1. [XL-2007] Mise à jour automatique Excel vers Powerpoint et inversement
    Par Stefao dans le forum Excel
    Réponses: 7
    Dernier message: 10/08/2012, 08h51
  2. Mise à jour automatique sous Access 2003.
    Par RicoNico dans le forum Access
    Réponses: 1
    Dernier message: 28/12/2011, 14h55
  3. [AC-2000] Mise à jour automatique tables Access
    Par 30avril1989 dans le forum VBA Access
    Réponses: 2
    Dernier message: 04/05/2010, 09h47
  4. Mise à jour automatique d'un fichier Excel
    Par Mythrandil dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 03/08/2007, 16h26
  5. Mise à jour automatique d'une table access via un .xls
    Par infratunes dans le forum Access
    Réponses: 4
    Dernier message: 05/04/2006, 18h33

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