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 :

exportation données sur plusieurs feuilles vers Access


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 147
    Par défaut exportation données sur plusieurs feuilles vers Access
    Après avoir écrit mon message dans le forum VBA Access, je me redirige ici.

    je dispose d'un classeur Excel de plus de 50 feuilles, comportant toutes le même nombre de colonnes et les mêmes informations. Cependant le nombre de lignes varient d'un fichier à l'autre. Je souhaite récupérer les informations de toutes ces feuilles Excel et de les mettre dans une seule et unique table Access. J'ai éventuellement pensé à passer vers un fichier intermédiaire, mais le problème, c'est que je ne sais pas comment les mettre dans un seul et unique fichier.
    Et faire des copier-coller manuels; non merci, sur plus de 50 feuilles (ce qui n'est pour le moment qu'un échantillon) lol
    Merci de votre aide

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Déjà, pour créer une feuille unique, peut-être peux-tu t'inspirer de ça.
    Pour l'export, fais une recherche sur ce forum avec Access pour mot clé. Il y a de fortes chances que la réponse ait déjà été donnée (par Starec, Cafeine ou tout autre )
    Bonne chance

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 147
    Par défaut
    ok, je vais regarder ça, merci

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 147
    Par défaut
    je viens de me rendre compte que je ne peux pas réaliser ce qu'il y a dans "ça" car l'ensemble de mes données dépasse les capacités d'une feuille Excel...

  5. #5
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    Je ferais un ti truc dans le genre
    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
    Sub copyyyy()
    Dim sh As Worksheet
    Dim cr As Range
    Dim mySheet As Integer
     
    For mySheet = 2 To ThisWorkbook.Worksheets.Count
        Set cr = Sheets(mySheet).Cells(1, 1).CurrentRegion
        If cr.ListHeaderRows > 0 Then
            cr.Offset(1, 0).Resize( _
                cr.Rows.Count - 1, cr.Columns.Count).Copy
        Else
            cr.Copy
        End If
        Sheets(1).Range("A65000").End(xlUp).Offset(1, 0).PasteSpecial xlPasteAll
    Next
     
    End Sub

  6. #6
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    oups, je viens de voir ta réponse.

    tu pourrais créer une feuille csv non?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 147
    Par défaut
    kézako csv?

  8. #8
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    un fichier texte "Comma Separated Value"
    Mais ton export vers accès est manuel ou doit etre automatique??

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 147
    Par défaut
    bah j'aimerais qu'il soit automatique car j'ai trop de feuilles Excel. Sinon, j'ai récupérer le code suivant :

    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
    Sub transfer()
    '
    ' transfer Macro
    '
    ' Touche de raccourci du clavier: Ctrl+e
     
    '   Declaration variables
        Dim i, j, nl, nc As Integer
        Dim t As String
     
    '   Ouverture fichier
        Open ".\compos.txt" For Output As #1
            nc = Selection.Columns.Count
            nl = Selection.Rows.Count
     
    '       On boucle sur la selection
            For i = 1 To nl
                t = ""
                For j = 1 To nc
    '               ajout de la tabulation comme separateur
                    If t <> "" Then t = t & Chr(9)
                    t = t & ActiveWindow.RangeSelection.Next(i, j - 1)
                Next j
    '           Ecriture de la ligne dans le fichier si non vide
                Print #1, t
            Next i
     
    '   Fermeture fichier
        Close #1
    End Sub
    Mais comme j'ai 50 feuilles, sur la première ça fonctionne mais exécuter le code sur une deuxième feuille écrase les données de la première exécution.
    Peut-être rajouter une boucle for l'exécuter pour chaque feuille et éviter l'écrasement...

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

Discussions similaires

  1. Birt et données sur plusieurs feuilles Excel
    Par fleak dans le forum BIRT
    Réponses: 8
    Dernier message: 25/07/2011, 17h16
  2. Manipuler des données sur plusieurs feuilles
    Par gil71 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 04/05/2010, 14h55
  3. [AC-2003] Import d'un fichier Excel à plusieurs feuilles vers Access
    Par cosmonaute666 dans le forum VBA Access
    Réponses: 3
    Dernier message: 24/06/2009, 18h00
  4. [excel]source de données sur plusieurs feuilles
    Par Yolak dans le forum Excel
    Réponses: 5
    Dernier message: 25/06/2008, 14h40
  5. Réponses: 15
    Dernier message: 15/05/2008, 20h53

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