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

VBA Access Discussion :

Mise à jour table via fichiers Excel differents [AC-2007]


Sujet :

VBA Access

  1. #1
    Membre averti
    Homme Profil pro
    Sapeur pompier
    Inscrit en
    Février 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Sapeur pompier
    Secteur : Service public

    Informations forums :
    Inscription : Février 2008
    Messages : 442
    Points : 416
    Points
    416
    Par défaut Mise à jour table via fichiers Excel differents
    Bonsoir,

    Je souhaite mettre en place un formulaire afin de mettre à jour une table via des données Excel.
    Le fichier Excel sera différent tous les mois.

    En gros tous les mois je reçois des factures électroniques au format Excel.
    Afin de les exploiter et les comparer avec des données qui sont sous Access, je souhaiterai importer tous les mois ces factures dans une table.

    Mais je cherche le code VBA qui mettrait ma table à jour. La personne via un formulaire devra choisir le fichier Excel depuis Access et en cliquant sur importer, la mise à jour de la table s'effectuera automatiquement.
    Et mettre aussi une vérification afin que les mêmes données Excel ne soient pas importées deux fois (même fichier Excel).

    j'ai pensé à un table liée mais les fichiers changent tous les mois.
    Et je ne vois pas le code que je pourrai faire.
    Merci de me mettre sur la piste.

    Bonne soirée

    seb

  2. #2
    Membre éclairé Avatar de dumas.blr
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2010
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2010
    Messages : 598
    Points : 879
    Points
    879
    Par défaut
    Bonjour sebing,

    Je suis en train de traiter un topic équivalent (regarde ici)

    Le code VBA doit être légèrement remanié (dans ce topic, ce sont des fichiers DBASE), mais le principe reste le même.

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 359
    Points : 23 829
    Points
    23 829
    Par défaut
    Tu peux utiliser DoCmd.TransfertSpreadSheet pour charger des données en provenance d'Excel.

    Pour le contrôle, l'idéale serait d'avoir une clef primaire (ex : Numéro de facture) afin d'éviter les doublons. Sinon tu peux aussi noter le nom du fichier source dans ta table de destination.

    Personnellement, quand je fais quelque chose comme cela je passe par une table intermédiaire où je stocke les données reçues.

    Je fais mes contrôles sur la table intermédiaire. Et quand celle-ci est correcte, alors je charge mes données dans la table définitive.

    A+

  4. #4
    Membre averti
    Homme Profil pro
    Sapeur pompier
    Inscrit en
    Février 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Sapeur pompier
    Secteur : Service public

    Informations forums :
    Inscription : Février 2008
    Messages : 442
    Points : 416
    Points
    416
    Par défaut
    Citation Envoyé par dumas.blr Voir le message
    Bonjour sebing,

    Je suis en train de traiter un topic équivalent (regarde ici)

    Le code VBA doit être légèrement remanié (dans ce topic, ce sont des fichiers DBASE), mais le principe reste le même.
    Merci Dumas, je vais étudier de prés le topic.

    Citation Envoyé par marot
    Tu peux utiliser DoCmd.TransfertSpreadSheet pour charger des données en provenance d'Excel.

    Pour le contrôle, l'idéale serait d'avoir une clef primaire (ex : Numéro de facture) afin d'éviter les doublons. Sinon tu peux aussi noter le nom du fichier source dans ta table de destination.

    Personnellement, quand je fais quelque chose comme cela je passe par une table intermédiaire où je stocke les données reçues.

    Je fais mes contrôles sur la table intermédiaire. Et quand celle-ci est correcte, alors je charge mes données dans la table définitive.

    A+
    Merci Marot.

    Demain, après une bonne nuit, j'essaye de mettre en place mon code.
    Je vous fais signe dès que j'ai terminé ou que je patauge

    Bonne soirée

    Seb

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

Discussions similaires

  1. [AC-2007] Mise a jour Table avec fichiers Excel
    Par Geoffray69 dans le forum Access
    Réponses: 4
    Dernier message: 12/09/2013, 15h27
  2. Mise à jour d'un fichier excel par un autre
    Par Homer091 dans le forum Excel
    Réponses: 3
    Dernier message: 13/06/2008, 14h45
  3. [Excel] Mise à jour d'un fichier
    Par Orasana dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 31/07/2007, 14h52
  4. mise à jour d'un fichier excel à partir d'un textbox
    Par hachdotnet dans le forum Windows Forms
    Réponses: 2
    Dernier message: 13/03/2007, 15h59
  5. DTS : update table via fichier excel
    Par jbrasselet dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 19/07/2006, 09h38

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