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 :

Lire Excel1 => analyse dans Access => écriture Excel2 (Lateblinding)


Sujet :

VBA Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2014
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2014
    Messages : 50
    Points : 35
    Points
    35
    Par défaut Lire Excel1 => analyse dans Access => écriture Excel2 (Lateblinding)
    Bonjour,

    Voici mon problème:

    Quand je clique sur le bouton du formulaire1 de ma BDD (RechercheExcel.mdb), j'aimerais:

    1) qu'Access ouvre ClasseurDonnees.xls
    2) créer un nouveau classeur1
    3) regarde pour chaque référence de "ClasseurDonnees.xls" si la valeur correspondante existe dans la table1 de la BDD
    4) si la valeur existe, Access copie les information dans le classeur1
    5) Access affiche le classeur1

    Le code doit être en LateBinding.

    J'ai commencé à écrire un module grâce au tutoriel de mhubiche: http://mhubiche.developpez.com/vba/o...cel/recordset/

    Cependant, je ne sais pas comment gérer la succession de lecture/écriture dans deux différents classeurs Excel.

    Quelqu'un saurait-il comment s'y prendre?

    Merci d'avance pour vos réponses.
    Fichiers attachés Fichiers attachés

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    je propose
    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
     
        'Définir les objets Application et Classeur d'Excel (Classeur 1)
        Set objExcel1 = CreateObject("Excel.Application")
        objExcel1.Visible = True   'optionnel
        Set objClasseur1 = objExcel1.workbooks.Add()
     
        'Afficher le classeur où sont les données à analyser (Classeur 2)
        strNomFichier = CurrentProject.Path & "\ClasseurDonnees.xlsx"
        Set objExcel2 = CreateObject("Excel.Application")
        objExcel2.Visible = True   'optionnel
        objExcel2.workbooks.Open strNomFichier
        Set objClasseur2 = objExcel2.workbooks(1)
     
        'Boucle sur toutes les lignes du classeur du données pour savoir si la référence existe dans la BDD
        Set rstDatas = CurrentDb.OpenRecordset("Table1", dbOpenSnapshot)
        ligne = 1
        i = 2
        Do
            Valeur = objClasseur2.Sheets("Feuil1").range("A" & i)
            If objClasseur2.Sheets("Feuil1").range("A" & i) = "" Then Exit Do
            rstDatas.MoveFirst
            rstDatas.FindFirst "[id]=" & Valeur 'recherche la valeur
            If Not rstDatas.NoMatch Then    'si trouvée on enregistre
                objClasseur1.Sheets("Feuil1").Cells(ligne, 1) = Valeur
                ligne = ligne + 1           'pour la prochaine valeur
            End If
            i = i + 1   'cellule suivante
        Loop
        rstDatas.Close
    ne pas oublier d'ajouter les références Microsoft Excel et Microsoft DAO

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2014
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2014
    Messages : 50
    Points : 35
    Points
    35
    Par défaut
    Merci helas,

    ton code marche très bien!

    Pour information, je n'ai pas eu besoin d'ajouter la référence Microsoft Excel... LateBinding Rules

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

Discussions similaires

  1. Lecture de tables access et écriture dans excel
    Par frabey dans le forum VBA Access
    Réponses: 6
    Dernier message: 01/07/2014, 16h16
  2. Réponses: 0
    Dernier message: 15/04/2012, 14h15
  3. Lire excel et les insérer dans access avec vbscript
    Par regisyves dans le forum VBScript
    Réponses: 3
    Dernier message: 19/06/2010, 07h27
  4. Lire des tables SAS dans Access
    Par pierre24 dans le forum IHM
    Réponses: 1
    Dernier message: 27/08/2008, 08h49
  5. Débutant - lire un liens htm dans une table access..
    Par jaromyr dans le forum Modélisation
    Réponses: 8
    Dernier message: 21/12/2007, 21h26

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