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]Importation données Access dans Excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 40
    Par défaut [VBA]Importation données Access dans Excel
    bonjour à tous,

    est ce que il y a quelqu'un qui peux montrer comment faire pour importer des données provenant d'une base de donnée Access vers excel en utilisant une macro, en fait pour l'instant je peux importer juste des données d'un fichier XL-2007 , je ne sais pas est ce que c'est pareil
    Voila comment je fais pour importer un fichier Xls
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Fichier = Application.GetOpenFilename("Fichier Excel, *.csv; *.xlsm;*.xls;*.xla;*.xlsx")
    Merci d'avance,
    Max,

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Il serait bon dans ton cas que tu précises les données dans Access, les données dans Excel, s'il y a transformation de celles-ci, filtrage.

    Ton code serait donc à partir d'Excel ?

    As-tu lu cela Choisir parmi les différentes méthodes d'export vers Excel

    Philippe

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 40
    Par défaut
    Bonsoir,
    Merci philipe pour ta réponse, en fait je debute en vba et ce que je veux faire pour l'instant c'est récuprer les donner d'une base de données acces et les coller dans une feuil de mon fichier excel

    Merci d'avance

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

    Tu ne réponds pas aux questions, les données c'est vague, c'est une table ? Plusieurs tables ? Toutes les tables ?

    Les données tel quel ? Avec filtre ?

    Merci de répondre aux questions que l'on te pose, si tu veux que les membres puissent te fournir de l'aider.

    Philippe

  5. #5
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut, il y a une grande quantité de tutoriels qui seront à lire et assimiler, par exemple dans la FAQ http://excel.developpez.com/faq/?page=Access

  6. #6
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 40
    Par défaut
    bonjour,
    En faite je travaile sur l'auomatisation des données en excel 2007, je fais une macro por récupèrer toutes les données des fichier excel apres les copier dans mon fichier excel(ça c'est fait), actuellement j'ai un fichier access il faut que je récupère les donne de cette table acces ,pour l'instants je ne trouve comment faire


    Voila comment je fais pour importerles donner d'un fichier Xls:
    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
    32
    33
    34
    35
    Sub Bouton1_Clic()
    Reponse = MsgBox("Voulez vous charger l'Export de classeur1 pour l'année " & Range("B" & Range("D100")) & "?", vbQuestion + vbYesNo)
     
    If Reponse = vbYes Then
        Fichier = Application.GetOpenFilename("Fichier Excel, *.csv; *.xlsm;*.xls;*.xla;*.xlsx")
     
     
        'Range("A1:Z300000").Value = Null
      If Fichier <> False Then
     
      'ici je veux filtrer le fichier par exmple copier just les colonnes A B C et  juste les lignes des  semaine 1 2 3 4 de classeur1
        Annee = Range("C100")
     
        Sheets(Annee).Activate
        Var_chemin = Fichier
        Fichier1 = ActiveWorkbook.Name
        Workbooks.Open Var_chemin, local:=True
        Fichier2 = ActiveWorkbook.Name
     
        Workbooks(Fichier2).Sheets(1).Range("A1:Z300000").Copy Workbooks(Fichier1).Sheets(Annee).Range("A1:Z300000")
     
     
        Windows(Fichier2).Activate
        'ActiveWindow.Close
        ActiveWorkbook.Close savechanges:=False
        Windows(Fichier1).Activate
        Sheets("feuil1").Activate
        'Range("A1:Z300000").Select
        'ActiveSheet.Paste
      Else
        MsgBox "Vous n'avez exporté aucun fichier"
      End If
     
    End If
    End Sub

  7. #7
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 40
    Par défaut
    bonsoir kiki,

    Merci bcp tt marche bien ,j'ai une question à propos du filtrage des données, est ce que c possible de filtrer le fichier access, c a d recupérer just les colonnes nécessaire, par exemple ajouter à la macro précédente un filtre qui copie just les colonnes A,B,C (en fait j'ai un fichier access avec plusieurs colonnes que j'en ai pas besoin)

    Merci d'avance

  8. #8
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut,à adapter à ton contexte

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strSQL = "SELECT Nom,Prénom,Adresse FROM Contacts"
    Si les champs comportent des espaces, mettre des [] [Nom du Champ]

  9. #9
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 40
    Par défaut
    Merci bcp KiKi pour ton aide

    la macro fonctionne trés bien,maintenant je veux ajouter un autre bouton qui me fait un export des données copier du fichier access vers une autre feuil, parcontre il faut que j'exporte la somme de la colonne A pour chaque mois(collone b) et pour chaque région(colonne c) et coller le résultat dans une nouvelle feuil
    pour l'intstant j'ai un code qui me faitla fonction trier pour chaque 4 semaine(janvier 1-4, février 5-8....) je n'ai pas pu le modifier pour ajouter la somme et coller le resultat dans une nouvelle feuil dans mon fichier



    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
    Sub trier()
        Dim i&, fin&, aa As Variant, bb As Variant, a&
        With Feuil3
            fin = Feuil3.Range("A" & Rows.Count).End(xlUp).Row
            y = 1
            aa = Feuil3.Range("A2:D" & fin)
            For i = 1 To UBound(aa)
                aa(i, 4) = ""
            Next i
            For i = 1 To UBound(aa)
                If aa(i, 1) >= 1 And aa(i, 1) <= 4 Then aa(i, 4) = "oui": y = y + 1
            Next i
            If y = 1 Then Exit Sub
            ReDim bb(y - 1, 3)
            y = 1
            For i = 1 To UBound(aa)
                If aa(i, 4) = "oui" Then
                    For a = 1 To 3
                        bb(y, a) = aa(i, a)
                    Next a
                    y = y + 1
                End If
            Next i
        End With
        Feuil2.Cells.Clear
        Feuil2.Range("A1").Resize(UBound(bb), UBound(bb, 2)) = bb
    End Sub
    Merci bcp kiki

Discussions similaires

  1. [XL-2003] Importer données access dans une feuille Excel
    Par grimgrim dans le forum Excel
    Réponses: 2
    Dernier message: 11/05/2012, 03h31
  2. vba - Import Tables Access sous Excel
    Par House MD dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/08/2008, 11h54
  3. [BO 6.5.1][VBA]Import données BO sous EXCEL. HELP
    Par sweetsugar dans le forum SDK
    Réponses: 2
    Dernier message: 15/02/2008, 13h37
  4. Importation données Access dans Excel
    Par pascalh dans le forum Excel
    Réponses: 1
    Dernier message: 25/09/2007, 16h54
  5. Import Requete Access dans Excel
    Par shadockgreg dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 04/09/2006, 17h03

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